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应该就能正确启动。
于是我按照脚本中所述在该注册表目录下添加了项JavaSoft\Java Development Kit,再通过XAMPP控制台运行tomcat,结果如下:

总算正常了!
XAMPP里tomcat启动报错:Make sure you have Java JDK or JRE installed and the required ports are free的更多相关文章
- Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested address
Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested addres ...
- [转]Tomcat启动报错:AnnotationConfigBeanDefinitionParser are only available on JDK 1.5 and higher
原文地址:https://blog.csdn.net/daochuwenziyao/article/details/54949151 问题描述: 控制台输出AnnotationConfigBeanDe ...
- tomcat启动报错
[toc]启动错误 does not exist or is not a readable directory 问题:tomcat启动报错:does not exist or is not a rea ...
- maven项目使用tomcat启动报错:Server Tomcat v8.5 Server at localhost failed to start
背景说明:1)该项目为maven项目,使用的maven的本地仓库里有不少之前使用过下载的jar包: 2)从svn下载该项目后,无报错情况: 3)部署到tomcat启动报错 如下 : 4)在网上搜索了很 ...
- Tomcat启动报错org.springframework.web.context.ContextLoaderListener类配置错误——SHH框架
SHH框架工程,Tomcat启动报错org.springframework.web.context.ContextLoaderListener类配置错误 1.查看配置文件web.xml中是否配置.or ...
- tomcat启动报错Several ports (8080, 8009) required by Tomcat v6.0
tomcat启动报错 如下图: 问题:8080.8009端口已经被占用. 解决办法: 1.在命令提示符下,输入netstat -aon | findstr 8080 2.继续输入taskkill -F ...
- [转]tomcat启动报错too low setting for -Xss
tomcat启动报错too low setting for -Xss 网上给的答案都是调整Xss参数,其实不是正确的做法, -Xss:每个线程的Stack大小,“-Xss 15120” 这使得tomc ...
- tomcat启动报错 ERROR o.a.catalina.session.StandardManager 182 - Exception loading sessions from persiste
系统:centos6.5 x86_64 jdk: 1.8.0_102 tomcat:8.0.37 tomcat 启动报错: ERROR o.a.catalina.session.StandardMan ...
- Tomcat启动报错:[The configuration may be corrupt or incomplete]的解决方案
1,场景说明: 偶然碰见Tomcat启动报错,此时并没有Add任何Web项目: Could not load the Tomcat server configuration at /Servers/T ...
随机推荐
- cocos2d-x之利用富文本控件遍历xml
1. #ifndef SuperRichText_hpp #define SuperRichText_hpp #include <stdio.h> #include "cocos ...
- 进制,原码VS补码
进制 十,八,十六进制=>二进制 十进制=>二进制:辗转相除取余,10除2商5余0,5除2商2余1,2除2商1余0,1除2商0余1,So,10d=1010b 八进制=>二进制:每1位 ...
- Python基础之函数等等
三元运算 三元运算(三目运算),是对简单的条件语句的缩写. 1 2 3 4 5 # 书写格式 result = 值1 if 条件 else 值2 # 如果条件成立,那么将 "值1&q ...
- hdu 3987 Harry Potter and the Forbidden Forest 求割边最少的最小割
view code//hdu 3987 #include <iostream> #include <cstdio> #include <algorithm> #in ...
- 实验:sigsuspend(),sigprocmask()
实验:sigsuspend(),sigprocmask() 源代码: /* * Program: pause_suspend.c * To test the difference between si ...
- C语言使用宏实现2个变量的交换
记录哪个方法更普适,更高效,这些方法不包括使用函数的方法,如果使用函数的话,使用指针的方法更合适. 使用中间变量 形如 int tmp, tmp = a; a=b; b = tmp; #define ...
- Android 系统架构
Android 系统从下至上分为四层:Linux 内核.Android 核心库及Android 运行时环境(Android Runtime). 应用程序框架以及应用程序等. Linux 内核(Linu ...
- 【OpenCV】opencv3.0中的SVM训练 mnist 手写字体识别
前言: SVM(支持向量机)一种训练分类器的学习方法 mnist 是一个手写字体图像数据库,训练样本有60000个,测试样本有10000个 LibSVM 一个常用的SVM框架 OpenCV3.0 中的 ...
- Android之数据存储----使用LoaderManager异步加载数据库
一.各种概念: 1.Loaders: 适用于Android3.0以及更高的版本,它提供了一套在UI的主线程中异步加载数据的框架.使用Loaders可以非常简单的在Activity或者Fragment中 ...
- 颗粒翻页(css3效果展示)
用css3效果做了一个颗粒翻页效果,布局上,一张图片做底层,在这张图片上用js创建一层小的行和列各为r和c的小span,给这些span分别设置background-position:用来覆盖原来的一张 ...