当我尝试使用 startup.bat
运行 tomcat 时,出现以下错误,
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
然后我尝试 C:\>echo %java_home%
并得到以下结果
C:\Program Files\Java\jdk1.6.0_25\bin
我什至尝试将 JAVA_HOME
手动设置为系统变量列表,但这个问题仍然存在。
我能做些什么来解决它?
我使用的是 Windows 7。
更新
在设置一个名为 JAVA_HOME 的新系统变量并将其路径设置为 "C:\Program Files\Java\jdk1.6.0_25\bin\"
后,我再次尝试了启动脚本,这当我得到一个新的错误时。
D:\Work\apache-tomcat-6.0.35\bin>startup.bat
Files\Java\jdk1.6.0_25"" was unexpected at this time.
知道这个错误是什么意思吗?
我什至尝试将路径设置为 "C:\Program Files\Java\jdk1.6.0_25\"
(即没有 bin),但出现同样的错误。
最佳答案
尝试在其他地方安装 java - 在没有空格的目录中。再次设置 JAVA_HOME
变量并重试。我记得 Tomcat 在 Window XP 上遇到了一些带有空格的问题,如果它在启动时使用的任何变量包含空格。也许它与 Windows 7 类似。
我记得我不得不更改处理 Tomcat 启动的 Tomcat java 类中的一些行。
@Edit: Luciano 让我注意到它,但你也应该从 JAVA_HOME
bin
@Edit: 我还记得另一个修复(虽然没有自己测试过)是将 JAVA_HOME
设置为简写版本,例如C:\Progra~1\Java\jdk1.6.0_25
关于java - 即使 JAVA_HOME 路径正确,Tomcat 也没有运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8858711/