排错日志——Tomcat启动闪退——20200616

当Tomcat启动出现闪退问题,通过检查环境变量、分析启动脚本和错误信息,发现是由于版本过旧导致的内存分配失败。解决方法是升级Tomcat版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:Tomcat无法启动

首先,搜索“Tomcattomcat启动闪退”,各种修改环境变量配置,无效。

看到一篇好文:tomcat启动闪退

方法/步骤

下面我先跟大家确认一下问题出现的前提条件(本机版本java:1.6.20,tomcat:6.0.32)

1)在eclipse里面启动tomcat时都是正常的。

2)在系统中配置了各种环境变量如下:

JAVA_HOME:H:\DevelopTools\Java\jdk1.6.0_20

CATALINA_BASE:H:\DevelopTools\apache-tomcat-6.0.32

CATALINA_HOME:H:\DevelopTools\apache-tomcat-6.0.32

CLASSPATH:.;%JAVA_HOME%;%JAVA_HOME%\jre\lib;

PATH:.;%JAVA_HOME%\bin;%CATALINA_HOME%\bin;
在这里插入图片描述

我们来具体来分析一下问题出现的原因及解决办法:

进入tomcat的安装目录(即解压后放置的地方):

看到圈出红色的3个bat文件,一般通过startup.bat启动tomcat时流程是:startup->catalina->setclasspath->catalina

如果这3个bat文件里面有一个出现错误的话就是启动失败。为了找到一闪而过的原因得需要我们来看看这3个文件里面到底是什么了
在这里插入图片描述

先记事本打开startup.bat,找到最后一句话::end,我们知道end表示结束的意思,:end是一个标记,我们在后面加上一句pause
(暂停等待的意思);

再次执行startup.bat,就会看到如图,当我们按任意的键时cmd窗口又是一闪而过了。但是这已经确定了我们的环境变量都是正确的。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

为了更加详细的看到信息,我们再来更改一句:找到call “%EXECUTABLE%” start %CMD_LINE_ARGS% 把里面的start替换为run。

再来看看cmd窗口里面输出错误信息了:

error occurred during initialization of vm

could not reserve enough space for object heap

could not create the java virtual machine

我们大体可以理解为:因为程序初始化时请求不到足够的内存,导致vm程序退出。
在这里插入图片描述

进行到这一步,报的错和博主不一样

Endorsed standards and standalone APIs in modular form will be supported via

一查,是tomcat版本太旧了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值