質問

Java 1.6とTomcat 5.5がシステムにインストールされています。

しかし、Tomcat 5.5はJava 1.5にアクセスし、結果としてエラーが発生します Bad version number in .class file JSPでJavaコードを実行している間。

TomcatバージョンをJava 1.6に変更するにはどうすればよいですか?

アップデート

Tomcat5w.exeがバージョン1.6を指していることをJVMを変更しようとしましたが、今は外れています。 Bad version in .class file エラー。しかし、今、私は次のエラーを取得します。

exception

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

java.lang.NullPointerException
myfirst.SearchLink.checkURL(SearchLink.java:20)
org.apache.jsp.Test_jsp._jspService(Test_jsp.java:52)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

根本的な原因は何でしょうか?

役に立ちましたか?

解決

Catalina.sh / catalina.batを開くと、次のように表示されます。

環境変数の前提条件

Java_homeは、Java開発キットのインストールを指摘する必要があります。

したがって、環境変数を設定します JAVA_HOME Java 6を指すには、確認してください JRE_HOME 設定されている場合、同じターゲットを指しています。

更新:Windowsにいるので、 こちらをご覧ください 環境変数を管理する方法

他のヒント

次の手順を使用して、JDKまたはJREの場所を変更できます。

  1. 開きます ターミナル また CMD.
  2. に行きます [tomcat-home]\bin ディレクトリ。
    元: c:\tomcat8\bin
  3. 次のコマンドを書きます。 Tomcat8W //ES//Tomcat8
  4. ダイアログを開き、選択します Javaタブ(トップペイン).
  5. Java仮想マシン値を変更します。
  6. クリック わかった.

ノート:Apache Tomeeで同じ手順で、しかし ステップ(3) コマンドは次のとおりです。 TomEE //ES

Eclipseでは、Tomcatを新しいJVMに向けることは非常に簡単です(この例JRE6)。私の問題は、どこでやるのかわからなかったことです。これがトリックです:

  1. Eclipseトップメニュー ファイル プルダウン]タブ、選択します 新着, -->他の
  2. ...に 新しいサーバー:ウィザードを選択します ウィンドウ、選択: サーバ-> サーバ... クリック
  3. . 。に 新しいサーバー:新しいサーバーを定義します ウィンドウ、選択 Apache> Tomcat 7サーバー
  4. ..今、青と下線付きの行の行をクリックしてください。 ランタイム環境を構成します
  5. サーバーランタイム環境 窓、
  6. ..選択する アパッチ, 、それを展開します(左の矢印をクリックしてください)、選択します Tomcat v7.0, 、クリックします 編集.
  7. 窓が呼ばれます サーバーランタイム環境の編集:Tomcatサーバー
  8. この画面には、ラベルが付けられたプルダウンがあります jres.
  9. JREがリストされているのを見つける必要があります JRE1.6.0.33. 。使用しない場合 JREをインストールしました ボタン。
  10. 目的のJREを選択します。クリック 終了 ボタン。
  11. で優雅に終了します サーバー:サーバーランタイム環境 ウィンドウ、クリックします わかった
  12. の中に 新しいサーバー:新しいサーバーを定義します 窓、ヒット
  13. の中に 新しいサーバー:追加して削除します ウィンドウ、アプリを選択し、サーバーにインストールします。
  14. の中に 新しいサーバー:追加して削除します ウィンドウ、クリックします 終了

それで全部です。興味深いことに、ステップ7〜10のみが重要であるように思われ、Tomcat v7.0を使用するために以前に定義されていたすべてのサーバーで使用されたJREを変更します。残りの手順は、新しいサーバーを定義することを除いて、画面に到達する他の方法が見つからないからです。他の誰かがより簡単な方法を知っていますか?

標準スクリプトを使用してTomcatを起動する場合(つまり、TomcatをWindowsサービスとしてインストールしていません)、setenv.batファイルを使用してJRE_HOMEバージョンを設定できます。

Windowsで、ファイルを作成します %CATALINA_BASE%\bin\setenv.bat, 、コンテンツ付き:

set "JRE_HOME=%ProgramFiles%\Java\jre1.6.0_20"

exit /b 0

そして、それはそれであるべきです。

これは、%catalina_base% bin configtest.batを使用してテストできます(免責事項:tomcat7のインストールでのみチェックしました)。

参考文献:

Linuxでは、TomCat7には次のような構成ファイルがあります。

/etc/sysconfig/tomcat7

...ここで、サーバー固有の構成を作成する必要があります。 java_home env変数をここで設定して、プロファイルを作成する必要があります。

これは私のために働いた。

ここにはいくつかの良い答えがありますが、TomcatをWindowsマシンにサービスとしてインストールしている私のようなユーザーに役立つかもしれないので、私は追加したかったのです。

オプション3はこちら: http://www.codejava.net/servers/tomcat/4-ways-to-change-jre-for-tomcat

基本的に、Tomcatw.exeとPoint Tomcatを開いて、使用する必要があるJVMのバージョンを開き、サービスを再起動します。展開されたアプリケーションも引き続き機能することを確認してください。

テストターミナルまたはCMDを開きます。 [tomcat-home] binディレクトリに移動します。例:c: tomcat8 bin次のコマンドを書きます:tomcat8w // es // tomcat8はダイアログを開き、Javaタップ(トップタップ)を選択します。 Java仮想マシン値を変更します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top