tomcat启动失败,提示错误:严重 [main] org.apache.catalina.startup.Catalina.load Catalina.start

1.问题描述:

解压缩tomcat7后,运行startup.bat后,tomcat7无法启动,一闪而过。查看日志文件,发现里面的catalina.2019-03-06.log文件提示错误如下:

06-Mar-2019 12:24:25.698 严重 [main] org.apache.catalina.startup.Catalina.load Catalina.start
 org.apache.catalina.LifecycleException: Failed to initialize component [StandardServer[8005]]
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:112)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:639)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:662)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:309)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
Caused by: java.lang.ClassCastException: org.apache.crimson.tree.DOMImplementationImpl cannot be cast to org.w3c.dom.ls.DOMImplementationLS
    at org.apache.catalina.core.JreMemoryLeakPreventionListener.lifecycleEvent(JreMemoryLeakPreventionListener.java:433)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:395)
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
    ... 8 more

2.解决方法:

阅读上面的提示,大概知道原因是:Catalina.start启动失败,Caused by缺少一些包。但是看不懂到底缺少什么包,上网搜索各种方法,并尝试。尝试过的方法有:安装其他各种版本的tomcat,修改8005端口,修改web.xml等等。但是都无济于事,还是提示相同的错误。

于是在startup.bat加入停止符pause,如下图

重新运行tomcat,提示using JRE_HOME .............

才反应过来,原来是JRE路径设置问题,安装JDK时没有设置JRE_HOME环境变量,于是设置环境变量JRE_HOME为G:\Myeclipse\JDK\jre

重新启动tomcat,运行成功!

为了保险起见,大家也都设置下JRE_HOME,还有JAVA_HOME

3.原因分析

提示这个错误是因为Catalina.start需要使用JRE_HOME下的一些lib,但是JAVA_HOME下的lib不存在,所以一直报错缺少某些包。

这个错误困扰我几天,一直不知道如何解决,一直在想这是个什么错误,虽然有一些错误提示,但是还是不好解决。总结原因如下:

(1)配置JDK时,不需要设置JRE_HOME的环境变量。不设置JRE_HOME,JDK照样运行,导致我确信JDK的环境变量设置没有问题,一直没有去设置JRE_HOME,浪费大量时间。

(2)阅读tomcat里的RUNNING.txt文件,里面也说只需要设置JAVA_HOME或JRE_HOME中的其中一个,说明如下图:

导致我更加认为JDK的设置没有问题。

4.心得体会

去推倒你确信没错的东西是很困难的,只有不断学习才能突破自己的认知,才会进步。同时需要保持怀疑的精神,多加尝试,会出现意外的惊喜!

成功运行之后,我把之前的那些错误尝试重新验证下,发现JDK1.8(32bit)可以和tomcat7、tomcat8的32bit或64bit兼容。

  • 22
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
回答: 根据引用和引用的信息,严重 [main org.apache.catalina.startup.Catalina.stopServer 无法联系是由于Tomcat服务器无法连接到本地主机的8005端口导致的。可能的原因是Tomcat服务器未运行或8005端口被其他进程占用。为了解决这个问题,你可以尝试以下几个方法: 1. 确保Tomcat服务器已经正确启动。你可以通过查看Tomcat日志文件或使用命令行工具来确认Tomcat是否正在运行。 2. 检查是否有其他进程正在占用8005端口。你可以使用网络监控工具来查看端口占用情况,并确保8005端口没有被其他进程使用。 3. 确保你的防火墙或安全软件没有阻止Tomcat与本地主机的通信。你可以暂时禁用防火墙或安全软件来测试是否可以连接到8005端口。 4. 如果以上方法都没有解决问题,你可以尝试重新安装或更新Tomcat服务器,以确保所有必需的包都已正确安装。 希望这些方法能够帮助你解决问题。如果问题仍然存在,请考虑咨询Tomcat相关的技术支持或社区以获取更详细的帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [org.apache.catalina.startup.Catalina stopServer SEVERE: Could not contact localhost:8005. Tomcat may](https://blog.csdn.net/weixin_33725270/article/details/92384696)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [tomcat启动失败提示错误严重 [main] org.apache.catalina.startup.Catalina.load Catalina.start](https://blog.csdn.net/yang201610/article/details/88248599)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值