您的位置:首页 > 运维架构 > Tomcat

Xmapp启动Tomcat时报Jdk、Jre未安装错误的解决方法

2015-12-22 22:37 477 查看
我的Xmapp是3.2.2,用的是安装版JDK,Tomcat用的是最新的8.0

用xmapp控制面板启动Tomcat时报JDK、JRE未安装错误,错误内容如下:

17:07:17 [Tomcat] Attempting to start Tomcat app...
17:07:18 [Tomcat] Tomcat Started/Stopped with errors, return code: 1
17:07:18 [Tomcat] Make sure you have Java JDK or JRE installed and the required ports are free
17:07:18 [Tomcat] Check the "/xampp/tomcat/logs" folder for more information


度娘了下,找到下面的一个解决方案,按他的方法操作之后仍然报错,没办法,在xmapp目录下shift+右键打开命令窗口,运行catalina_start.bat;

发现是如下错误:

Using CLASSPATH:       "D:\XAMPP\tomcat\bin\bootstrap.jar;D:\Program Files\Apache Software Foundation\Tomcat 8.0\bin\tomcat-juli.jar"

22-Dec-2015 22:43:46.475 SEVERE [main] org.apache.catalina.startup.Bootstrap.initClassLoaders Class loader creation threw exception

 java.io.IOException: 文件名、目录名或卷标语法不正确。

        at java.io.WinNTFileSystem.canonicalize0(Native Method)

        at java.io.WinNTFileSystem.canonicalize(WinNTFileSystem.java:428)

        at java.io.File.getCanonicalPath(File.java:618)

        at java.io.File.getCanonicalFile(File.java:643)

        at org.apache.catalina.startup.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:170)

        at org.apache.catalina.startup.Bootstrap.createClassLoader(Bootstrap.java:149)

        at org.apache.catalina.startup.Bootstrap.initClassLoaders(Bootstrap.java:90)

        at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:226)

        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)

这里的bootstrap.jar用的是xmapp\tomcat\bin\目录下的,再对比xmapp下的tomcat,发现是7.0版本,与单独安装的Tomcat版本不一致,于是替换8.0目录下的bootstrap.jar到xmapp\tomcat\bin\,问题解决!

下面是度娘搜索到的解决方案,放下下面供参考。

文章来自:宇托的狗窝

我的Xmapp是1.8,用的是非安装版的JDK,设置好JAVA_HOME之后,用xmapp控制面板启动Tomcat时报JDK、JRE未安装错误,错误内容如下:

17:07:17 [Tomcat] Attempting to start Tomcat app...
17:07:18 [Tomcat] Tomcat Started/Stopped with errors, return code: 1
17:07:18 [Tomcat] Make sure you have Java JDK or JRE installed and the required ports are free
17:07:18 [Tomcat] Check the "/xampp/tomcat/logs" folder for more information


然后我用xampp\tomcat目录下的catalina_start.bat启动试了一下,发面能正常启动。那就说明不是端口问题,而是xampp无法找到JAVA_HOME。

进入xampp目录,发现该目录也有一个catalina_start.bat,打开一下,果然,它只找了注册表,而没有直接使用环境变量。

解决方法有两个,一是添加注册表项,二是修改Xampp的Bat文件。

方法一:

JDK版本和Windows版相同(JDK和Windows同为32位或同为64位)时,添加项HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit,其默认值为你的JDK目录(和JAVA_HOME一样)。也可以把以下内容保存成reg文件,再导入。

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit]
@="你的JDK目录"


JDK版本和Windows版本不同(Windows为64位、Java为32位)时,添加项HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Development Kit,其默认值为你的JDK目录(和JAVA_HOME一样)。也可以把以下内容保存成reg文件,再导入。

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Development Kit]
@="你的JDK目录"


方法二:

要修改的文件有三个,分别为xampp\catalina_service.bat、xampp\catalina_start.bat、xampp\catalina_stop.bat。修改方法如下:
找到 goto ENDERROR
把 goto ENDERROR 改为 goto JDKRUN

修改完成后保存,然后再用xmapp控制面板启动,应该就没错误了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat jdk java