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,Tomcat 只有在我给它提供 JDK 文件夹的路径时才能工作。

那么JRE和JAVA home有什么区别,为什么Tomcat会这样表现呢?

4

1 回答 1

19

如果您使用完整的 JDK 运行,Tomcat 在启动时会启用一些额外的调试选项。这些选项需要 JDK,因此如果您声称要确保这些选项在使用时不会失败,Tomcat 会检查您是否实际使用了 JDK。

我很少看到使用这些选项。我想我在与 Tomcat 合作 10 年的过程中使用过它们一次。

当您使用 JRE_HOME 时,Tomcat 不会启用 JDK 特定选项,因此它不会检查您是否使用完整的 JDK 而不是 JRE 运行。

于 2012-06-21T22:39:01.517 回答