Tomcat (win7) 缺少 JRE_HOME 变量
Posted
技术标签:
【中文标题】Tomcat (win7) 缺少 JRE_HOME 变量【英文标题】:JRE_HOME variable missing with Tomcat (win7) 【发布时间】:2012-09-11 15:41:26 【问题描述】:我像两周前一样安装了 tomcat 和 Apache http-servers。我让它运行起来,并且能够从另一台计算机上运行 JSP 页面。我有一点停顿,现在我正在尝试运行它不起作用的系统。 我可以访问
中的默认索引页 http://[my-IP-address]:8080
但无法访问 jsp 文件夹的页面,甚至无法访问 .html 文件。它给了我
503 service temporarily unavailable.
甚至本地主机似乎都不起作用。我不记得是否需要启动 Tomcat 服务器或 mod_jk.so 是否自动处理。当我尝试使用 startup.bat 启动 tomcat 时,它给了我消息
JRE_HOME environment variable is not defined correctly
我已经从系统属性中设置了环境变量,我可以毫无问题地编译/运行 .java 文件。
JAVA_HOME C:\Program Files (x86)\Java\jdk1.6.0_16
JRE_HOME C:\Program Files (x86)\Java\jre6
那么这里发生了什么?我安装了Visual Studio,但除此之外我想不出tomcat突然不能工作的任何原因。这是非常令人沮丧的,所以任何帮助将不胜感激。
【问题讨论】:
您使用的是 Tomcat 中的哪个版本?你在使用任何IDE吗?根据我的理解,当我们同时设置 jdk 和 jre 时,tomcat 曾经首先采用 JRE 的路径。 我使用的是 Tomcat 7.0.27,没有 IDE,只是一个基本的文本编辑器。 我希望您可以尝试不使用 jre home 变量并将 java_home 用于 jdk ,如果您使用任何服务,您可以选择 jre 让我知道当您单独使用 jdk 时会发生什么输出? 我清除了所有与 Java 相关的环境变量,安装了 JRE7,并将其链接到 JRE_HOME。在命令行上运行 java 程序可以正常工作,但 Tomcat 仍然抱怨定义错误的变量。 经过一些测试,我发现http://[my-IP-address]:8080/test/jsp/index.html
确实有效,但http://[my-IP-address]:8080/test2/jsp/index.html
无效,甚至认为它们具有完全相同的内容和权限。 HTML 可以工作,但我仍然无法运行 JSP。
【参考方案1】:
像这样配置路径
您可以通过键入来检查路径的有效性
回显 %JAVA_HOME%
回显 %JRE_HOME%
然后一切都会像魅力一样发挥作用
【讨论】:
非常有帮助的帮助【参考方案2】:没有必要同时设置 both JDK_HOME 和 JRE_HOME 环境变量,因为 JRE_HOME 将默认为 JDK_HOME 的值。
在许多 Tomcat 安装中,根本不使用这些环境变量,而是在可选的 setenv.bat 脚本中设置。您可以在 Tomcat 安装的***目录中的 RUNNING.txt 文件的第 3 部分中找到所有这些记录,并且可以在此处找到副本http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt
如果您收到“未正确定义环境变量”错误消息,您需要检查您的 setenv.bat 文件(如果有)以及实际的环境变量。通过检查 setclasspath.bat,您可以看到它需要在这些目录中查看哪些文件。对于 JRE,它希望同时找到 %JRE_HOME%\bin\java.exe
和 %JRE_HOME%\bin\javaw.exe
根据我的经验,当 JRE 或 JDK 随后被删除或卸载时会发生此错误。
【讨论】:
【参考方案3】:如果您尚未安装 SDK,则提供 JRE 路径并注销并登录 - 这应该可以工作
【讨论】:
【参考方案4】:我最近遇到了这个问题,不管我检查了多少次......这个变量是在 windows 高级系统属性中设置的。
我发现如果没有设置 JRE_HOME 变量,系统将默认使用 JAVA_HOME 目录中作为 JDK 一部分的 JRE。如果您遇到此问题,但无法解决。请尝试删除 JRE_HOME 变量。
这为我解决了问题。
【讨论】:
【参考方案5】:我遇到了同样的问题,我通过将 Intellij 中的 tomcat 配置从默认设置更改为我自己的 jre 文件夹来解决它,如下图所示:
【讨论】:
【参考方案6】:所以,我安装了 Apache Tomcat/7.0.30,现在启动运行完美。没有更多的 503 错误,我可以从其他机器上运行 JSP 内容。
问题解决了,但谜团依然存在。看来jdk与问题无关。我的tomcat是不是老死了还是怎么的?
【讨论】:
你重新安装你的tomcat了吗?? 我将它从 7.0.27 升级到 7.0.30,现在我的设置可以正常工作了。 与 7.0.23 版的 tomcat 有完全相同的问题。更新到 7.0.52 解决了这个问题。谢谢。【参考方案7】:Windows 7。 雄猫 8 我遇到了同样的问题。我收到了 ire_environment 错误。 我应用了 HimalayanCoder 的解决方案。令我惊讶的是,echo 没有看到 java_home 或 ire_home。 我检查了环境中的路径和设置,两者都是正确的。 我重新启动了我的机器 5 次,java_home 的回声工作,但 ire_home 仍然没有显示。 tomcat 仍然无法工作,我仍然收到 jre_home 错误。 我一直在重新启动机器,在另外 5 次重新启动后,jre_home 路径通过了。 我的 tomcat 现在可以工作了。
感谢 HimalayanCoder。
【讨论】:
【参考方案8】:Path 有一些其他版本的java,比如JDK1.6。请删除路径中不需要的版本,然后启动 Tomcat 7。
在尝试了所有可能的答案后,我检查了我的路径,然后从路径中删除了 Java1.6,然后启动了 tomcat。它对我有用。
【讨论】:
【参考方案9】:我刚刚通过删除 JRE_HOME 变量解决了这个问题。正如它所说的“JRE_HOME 变量未设置为此路径 (Apache\bin)。”
【讨论】:
以上是关于Tomcat (win7) 缺少 JRE_HOME 变量的主要内容,如果未能解决你的问题,请参考以下文章
Tomcat start.bat闪退:JRE_HOME环境变量配置不对
windows tomcat 启动报错TOMCAT JAVA_HOME or JRE_HOME environment variable is not defined correctly
Tomcat Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
windows 启动tomcat 提示Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
[转]Tomcat----Neither the JAVA_HOME nor the JRE_HOME environment variable is defined