以前用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的更多相关文章

  1. Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested address

    Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested addres ...

  2. [转]Tomcat启动报错:AnnotationConfigBeanDefinitionParser are only available on JDK 1.5 and higher

    原文地址:https://blog.csdn.net/daochuwenziyao/article/details/54949151 问题描述: 控制台输出AnnotationConfigBeanDe ...

  3. tomcat启动报错

    [toc]启动错误 does not exist or is not a readable directory 问题:tomcat启动报错:does not exist or is not a rea ...

  4. maven项目使用tomcat启动报错:Server Tomcat v8.5 Server at localhost failed to start

    背景说明:1)该项目为maven项目,使用的maven的本地仓库里有不少之前使用过下载的jar包: 2)从svn下载该项目后,无报错情况: 3)部署到tomcat启动报错 如下 : 4)在网上搜索了很 ...

  5. Tomcat启动报错org.springframework.web.context.ContextLoaderListener类配置错误——SHH框架

    SHH框架工程,Tomcat启动报错org.springframework.web.context.ContextLoaderListener类配置错误 1.查看配置文件web.xml中是否配置.or ...

  6. tomcat启动报错Several ports (8080, 8009) required by Tomcat v6.0

    tomcat启动报错 如下图: 问题:8080.8009端口已经被占用. 解决办法: 1.在命令提示符下,输入netstat -aon | findstr 8080 2.继续输入taskkill -F ...

  7. [转]tomcat启动报错too low setting for -Xss

    tomcat启动报错too low setting for -Xss 网上给的答案都是调整Xss参数,其实不是正确的做法, -Xss:每个线程的Stack大小,“-Xss 15120” 这使得tomc ...

  8. 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 ...

  9. Tomcat启动报错:[The configuration may be corrupt or incomplete]的解决方案

    1,场景说明: 偶然碰见Tomcat启动报错,此时并没有Add任何Web项目: Could not load the Tomcat server configuration at /Servers/T ...

随机推荐

  1. cocos2d-x之物理引擎初试

    发现问题:监听代码部分不能在onEnter()段书写 bool HelloWorld::init() { if ( !Layer::init() ) { return false; } visible ...

  2. cocos2d-x之多点触碰初试

    bool HelloWorld::init() { if ( !Layer::init() ) { return false; } Size visibleSize = Director::getIn ...

  3. Linux之存储及文件系统管理

    一.存储管理 1.各种存储设备在Linux系统中对应的文件名 2.硬盘结构及分区 1).硬盘结构 2) .为什么要进行硬盘分区: a) 更容易管理和控制系统,因为相关的文件和目录都放在一个分区中. b ...

  4. mysql存储过程procedure

    传送门 http://www.blogjava.net/sxyx2008/archive/2009/11/24/303497.html ) ); DROP PROCEDURE IF EXISTS ju ...

  5. java解惑 读书笔记

    表达式之谜 >奇数性 当取余操作返回一个非0的结果.他与左操作数具有相同的正负符号. >找零谜题 在需要精确答案的地方,要避免使用float和double.对于货币运算.要使用int,lo ...

  6. Javascript 中的闭包和引用

    Javascript 中一个最重要的特性就是闭包的使用.因为闭包的使用,当前作用域总可以访问外部的作用域.因为Javascript 没有块级作用域,只有函数作用域,所以闭包的使用与函数是紧密相关的. ...

  7. Android开发环境搭建(转)

    转载:http://www.cnblogs.com/zoupeiyang/p/4034517.html#1 引言   在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想 ...

  8. Java语法基础(二)----运算符

    一.运算符: 运算符包括下面几种: 算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符 三目运算符 最不常用的是位运算符,但也是最接近计算机底层的. 1.算术运算符 (1)+的几种用法:加法.正 ...

  9. Resharper团队协作之TODO

    TODO 需求 首先我想跟大家分享一下我们团队的代码检查流程. 1. 项目经理随时会检查成员的代码,如果发现有不符合规范的代码,会在注释里面加todo.比如,假设leo的代码不符合规范,那么项目经理就 ...

  10. VS2013无法启动 IIS Express Web解决办法

    不要勾选[覆盖应用程序根URL(U)],或让[覆盖应用程序根URL(U)]下面的输入框和上面的输入框的地址一样! 使用VS2013有一段时间了,因前期都是编写C/S程序,没有使用到B/S调试器.前几日 ...