32

Tomcat を起動するスクリプトがあり、次のようになります。

rem set JRE_HOME=C:\Program Files\Java\jdk1.7.0_03
set JRE_HOME=C:\Program Files\Java\jre7\
set CATALINA_HOME=D:\test\Server\apache-tomcat-6.0.18
"%CATALINA_HOME%\bin\catalina.bat" jpda start

JRE_HOME を jre フォルダーまたは JDK フォルダーに設定すると、Tomcat は機能しますが、JRE_HOME を削除して代わりに JAVA_HOME を使用すると、JDK フォルダーへのパスを指定した場合にのみ Tomcat が機能します。

では、JRE と Java ホームの違いは何でしょうか。なぜ Tomcat はこのように動作するのでしょうか?

4

1 に答える 1

19

完全な JDK で実行している場合、Tomcat は起動時にいくつかの追加のデバッグ オプションを有効にします。これらのオプションは JDK を必要とするため、Tomcat は、これらのオプションが使用されても失敗しないことを保証する必要があると主張する場合、実際に使用していることを確認します。

これらのオプションが使用されていることはめったにありません。10年間Tomcatを使ってきた中で一度は使ったと思います。

JRE_HOME を使用する場合、Tomcat は JDK 固有のオプションを有効にしないため、JRE ではなく完全な JDK で実行しているかどうかをチェックしません。

于 2012-06-21T22:39:01.517 に答える