JAVA_HOME 和 JRE_HOME 的区别
Posted
技术标签:
【中文标题】JAVA_HOME 和 JRE_HOME 的区别【英文标题】:Difference between JAVA_HOME and JRE_HOME 【发布时间】:2012-06-22 15:10:31 【问题描述】:我有一个启动 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为什么会这样?
【问题讨论】:
【参考方案1】:如果您使用完整的 JDK 运行,Tomcat 在启动时会启用一些额外的调试选项。这些选项需要 JDK,因此如果您声称要确保这些选项在使用时不会失败,Tomcat 会检查您是否实际使用了 JDK。
我很少看到使用这些选项。我想我在使用 Tomcat 的 10 年中使用过它们一次。
当您使用 JRE_HOME 时,Tomcat 不会启用 JDK 特定选项,因此它不会检查您是否使用完整的 JDK 而不是 JRE。
【讨论】:
这些额外的调试选项是什么? 在jdb下运行以上是关于JAVA_HOME 和 JRE_HOME 的区别的主要内容,如果未能解决你的问题,请参考以下文章
Neither the JAVA_HOME nor the JRE_HOME错误解决
Tomcat Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
解决Linux下启动Tomcat遇到Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
Tomcat解决配置了环境变量还是会Neither the JAVA_HOME nor the JRE_HOME environment...的问题和启动后乱码问题
启动tomcat提示Neither the JAVA_HOME nor the JRE_HOME environment variable is defined