即使JAVA_主路径正确,Tomcat也没有运行
当我尝试使用即使JAVA_主路径正确,Tomcat也没有运行,java,apache,tomcat,windows-7,java-home,Java,Apache,Tomcat,Windows 7,Java Home,当我尝试使用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\u home%,结果如下 C:\Program Files\J
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\u home%
,结果如下
C:\Program Files\Java\jdk1.6.0_25\bin
我甚至尝试将JAVA\u HOME
手动设置为系统变量列表,但这个问题仍然存在
我能做些什么来解决它
我正在使用Windows7
更新
在设置一个名为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\u HOME
变量,然后重试。我记得Tomcat在WindowsXP上遇到了一些问题,如果它在启动包含空格的窗口时使用了任何变量,那么它就会使用空格。也许它与Windows7类似
我记得我必须更改Tomcat java类中处理Tomcat启动的一些行
@Edit:卢西亚诺抢先让我注意到了这一点,但你也应该将bin
从JAVA\u主页中删除
@Edit:我还记得另一个修复方法(虽然我自己没有测试过)是将JAVA\u HOME
设置为速记版本,例如C:\Progra~1\JAVA\jdk1.6.0\u 25
我认为您的JAVA\u HOME应该指向
C:\Program Files\Java\jdk1.6.0_25
而不是
C:\Program Files\Java\jdk1.6.0_25\bin
也就是说,没有bin文件夹
更新
如果我像你一样用引号设置JAVA_HOME,我就会看到这个新错误。你在用引号吗?如果是,请删除它们。避免在任何环境变量的末尾使用分号。。。从JAVA_主页或JRE_主页
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_25\bin
及
应如图所示…设置环境变量([Windows键]+[Pause键],切换到“高级”,单击“环境变量”,在“系统变量”(下列表)中,单击“新建”(或“编辑”(如果您已经拥有它)
姓名:
爪哇之家酒店
价值:
C:\PROGRA~1\Java\JDK16~1.0\u 3
对于C:\Program Files\Java\jdk1.6.0\U 32
单击“确定”
转到“系统变量”中的“路径”
添加;在行的末尾(除非已经有一个)
加:
C:\PROGRA~1\Java\JDK16~1.0\u 3\bin
全部单击“确定”-重新启动计算机(建议)我设置了
变量名:JAVA_HOME
值:C:\Program Files\Java\jdk1.6.0\U 32
我在系统/环境变量中设置了这些属性,没有分号,tomcat正在我的系统上运行
它真的很有效。还要确保您拥有适用于CPU类型的正确版本的Tomcat。我在32位O/S上安装了64位Tomcat,但它给了我JAVA_HOME异常,而事实并非如此。从JAVA_HOME中删除“bin”。这就解决了问题。我已经安装了Win 8 x86。我的路径e有条目C:\Program Files\Java\jdk1.6.0\u 31\bin
,我还有以下变量:
JAVA\u HOME
:C:\ProgramFiles\JAVA\jdk1.6.0\u 31;
JRE\u HOME
:C:\Program Files\Java\jre6;
我的tomcat安装在C:\Program Files\Apache软件基金会\Apache-tomcat-7.0.41
但这对我还是不起作用
我尝试用Progra~1
替换这些路径中的程序文件
。我还尝试将JAVA移动到另一个文件夹,使其完整路径不包含任何空格。但没有任何效果
最后,对我有效的环境变量有:
- 保持路径变量与完整的
程序文件
相同,即C:\Program Files\Java\jdk1.6.0\u 31\bin
JAVA\u HOME
:C:\ProgramFiles\JAVA\jdk1.6.0\u 31
- 已删除
JRE\u主页
因此,我所做的是删除了JRE_HOME
并删除了JAVA_HOME
末尾的分号。虽然我删除了分号,但我认为分号不应该是一个问题。我正在提供这些设置,因为在谷歌搜索了很多次之后,我什么都不起作用,突然这些似乎起作用了。你可以复制一下,看看它是否适合你
这也适用于Win 7 x64,其中
- 包含的路径变量
C:\ProgramFiles(x86)\Java\jdk1.7.0\u 17\bin
JAVA\u HOME
设置为C:\Program Files(x86)\JAVA\jdk1.7.0\u 17
(不带分号)
请告诉我这是为什么,我知道删除JRE_HOME是一个奇怪的解决方案,但是你猜它有什么不同吗?有两种类型的环境变量
第一个用户变量,如果您在此路径中选择它,它将仅适用于该特定用户。
第二个是系统变量,如果在其中设置路径,则所有类型的用户都会使用它。。
在我的系统中,我在系统变量中设置JAVA_HOME,它不工作,然后我在
用户变量它正在工作…所以请尝试两种类型的环境变量
First Run the tomcat directly through the tomcat /bin folder with
startup.bat if running sucessful the set the variable as below sample
JAVA_主值:C:\Program Files\JAVA\jdk1.6.0_32
路径:C:\ProgramFiles\Java\jdk1.6.0\U 32\bin
CATALINA_HOME=C:\Program Files\Apache软件基金会\Apache Tomcat 7.0.27
路径=%PATH%;%JAVA_HOME%\bin;%CATALINA_HOME%\bin
如果需要类路径:%CATALINA\u HOME%\lib;%JAVA\u HOME%\lib;有时分号很重要
请确保
JAVA_HOME=c:\Program Files\Java\jdk1.6.0_32
但不是
JAVA_HOME=c:\Program Files\Java\jdk1.6.0_32;
我遇到了同样的问题,但没有解决在没有\bin的情况下为JAVA\u HOME和JRE\u HOME设置环境变量。
我删除了Tomcat并再次解压,它成功了。删除分号,您可以看到该链接:
我也有类似的问题,请注意,除非我们要使用调试模式,否则不需要将JAVA_设置为HOME。
Windows7中的tomcat可以处理
JAVA_HOME=c:\Program Files\Java\jdk1.6.0_32;
JRE_HOME = C:\Program Files\Java\jdk1.8.0_77\jre
SET JRE_HOME="C:\Program Files\Java\jre1.8.0_121"
SET JRE_HOME=C:\Program Files\Java\jre1.8.0_121
Files\Java\jre1.8.0_121"" was unexpected at this time.