XAMPP里tomcat启动报错:Make sure you have Java JDK or JRE installed and the required ports are free

以前用XAMPP的时候就是自然而然装好了就可以用,最近重装了新系统,打算在Windows 10里面配置Apache tomcat、PHP、MySQL的开发环境,迟迟试验不成功,于是直接用了XAMPP,没想到也报错,尴尬至极下定决心要解决这个问题。

这是报错提示:Make sure you have Java JDK or JRE installed and the required ports are free

想到这个start应该是启动了tomcat相关的一个命令行脚本,于是我跑到tomcat的目录下看到了名为catalina_start.bat的脚本,想想应该是运行的这个脚本了。

双击运行该脚本,发现报错如下

提示是JDK和JAVA_HOME环境变量没有配置好,于是我就去设置系统环境变量,弄了半天也没有解决该问题。。。

为了验证我确实是配置成功了JAVA环境变量,我在命令行里输入: java -version,反馈结果如下:

这证明了,我在本机上的JAVA环境变量是配置成功的。。。可是为什么通过XAMPP的控制台启动不了tomcat呢?

我决定去试试tomcat本身是否配置成功,于是跑到tomcat/bin/目录下启动tomcat

没有任何报错,看样子启动成功了,我打开了localhost:8080确认是否启动成功,效果如下:

这TM居然真的没错!那么问题来了:JAVA环境配置无误,tomcat配置无误,最后通过XAMPP来启动就无法启动了,那么一定是脚本本身的问题了。

于是一怒之下,我直接点开了catalina_start.bat脚本,查看源代码。

 

框起来的部分就是报错部分,大意就是去注册表中查看了一下数值,但是发现跟预想的不一样,就直接输出报错,结束运行了。

我查看了一下系统注册表,发现没有JavaSoft目录,所以运行到这儿的时候就会报错,结束运行。

鉴于JAVA环境和tomcat配置都是无误的,所以只要脚本代码能够正常运行完毕,tomcat应该就能正确启动。

于是我按照脚本中所述在该注册表目录下添加了项JavaSoftJava Development Kit,再通过XAMPP控制台运行tomcat,结果如下:

总算正常了!

原文地址:https://www.cnblogs.com/xiaoshen555/p/6004761.html