Tomcat启动掉帧问题解决集(八大类详尽)
本文目录:
一、Java环境不对,Tomcat不同版本须要的Java环境不同。
二、环境变量没有配置好
三、Tomcat端口被占用
四、配置文件编码问题
五、启动时须要的配置文件编撰出错
六、部分相关文件遗失
七、免安装的tomcat死机
八、修改配置文件setclasspath.bat
九、等待更新
Tomcat启动时出现白屏一闪而过的现象缘由有好多linux tomcat debug模式启动,但一般都涉及几个方式:
一、Java环境不对,Tomcat不同版本须要的Java环境不同。
有时tomcat版本才能正常安装,但启动时测量到java版本不对都会出现启动死机一闪而过的现象。诸如:tomcat10.1-M14版本才能在javaversion“1.8.0_131”下用命令提示符安装成功,运行时却出现启动死机一闪而过的现象,查了许久都没有发觉缘由,近来官方出了安装提示才明白问题出在运行须要Java11或更高版本环境。
检测Java版本是否适宜安装,按windows+R启用cmd命令,打开命令提示符,输入“java-version”,回车,出现jdk版本,
若果不适宜,请先安装相应的Java版本。
当前JavaSEDevelopmentKit最新版本是18.0.1.1
下载地址:JavaArchiveDownloads-JavaSE18
或
JavaSEDevelopmentKit18.0.1.1
二、环境变量没有配置好
Tomcat须要配置好JRE能够正常运行。通常情况下,启动死机崩溃是由于找不到JRE路径,也就是说环境变量在安装JDK的时侯没有配置好。
检测jdk是否安装,按windows+R启用cmd命令,打开命令提示符,步入命令提示符,输入“java-version”,回车,出现jdk版本,表示安装成功,检测版本是否合适,参考上文Java环境和tomcat版本对应关系。
检查jdk配置有没出错linux 论坛,可以在tomcat安装目录bin下,startup.bat文件最后加上pause命令
启动运行tomcat,死机会须要按任意键才结束如图:
如能如图正常显示Using路径,说明环境变量设置没有问题,可跳过此步骤。
如发觉问题,可检测相关环境变量配置
①配置环境变量,本机笔记本—>属性—>中级—>点击环境变量
②在系统变量里点击新建—>添加变量:
③输入变量名,变量值:
变量名:CATALINA_HOME
变量值:c:0tomcat10_021
(变量值为tomcat安装路径,就是你刚才解压安装tomcat的那种文件夹路径)
④在系统变量里找到Path,双击打开:
新建环境变量,输入:%CATALINA_HOME%bin
或在原先path列表中添加%CATALINA_HOME%lib;%CATALINA_HOME%bin
⑤打开cmd,选择以管理员的身分运行:(Windows键+R,输入cmd,回车)
⑥进入tomcat安装位置bin目录,输入:startup,回车
⑦打开浏览器,输入::8080/
(出现以下页面,证明安装配置成功。)
三、Tomcat端口被占用
Tomcat默认须要使用8080等几个端口,假如端口被占用,tomcat启动时才会崩溃,此时须要查找是那个进程占用了8080端口。
虽然还可以通过查看Tomcat终端输出日志,找到Tomcat目录下的logs目录中catalina当日的日志,比如:catalina.2022-05-19.log文件,假如在日志出错信息中见到:Addressalreadyinuse:bind说明是端口占用了。
在cmd中查看8080有没有被占用,找出占用8080端口的进程
按windows+R启用cmd命令,打开命令提示符,
输入:netstat-ano|findstr“8080”
假如端口没有被占用,还会显示空值;
假如你更改过tomcat端口设置,请查找你的tomcat使用端口,比如,曾把tomcat端口更改成9080,此时查询9080端口使用情况的命令为:
输入:netstat-ano|findstr“9080”
显示为9080端口被PID值为15316的进程所占用。
2接出来可以在任务管理器里查看该PID值进程号所对应的进程:
任务管理器菜单栏中的点击【选项】——勾选”【前端显示】。
任务管理器菜单栏中的点击-【查看】-【选择列】中勾选“PID”
发觉占用9080端口,PID值为15316的进程为java.exe
3、判断该进程是否有用,假如没有用,接着直接右键结束该进程即可。
或则,直接在命令提示框界面输入要结束的PID值进程,比如:
要中止PID号为1196的进程,
可输入:Taskkill/PID1196
假如该进程确实有用不能结束,这么可考虑更换tomcat使用的端口
打开:Tomcat的安装目录confserver.xml
找到下边这行代码:
connectionTimeout="20000"
redirectPort="8443"/>
将8080端口改为你所须要的端口地址,比如,现今改为9080;
connectionTimeout="20000"
redirectPort="8443"/>
4、在Tomcat目录bin中找到“startup.bat”启动Tomcat
5、然后打开浏览器,输入::9080,就可以发觉Tomcat正常启动了。
除8080端口外Tomcat都会占用8005,8009和8443端口。倘若这4个端口已被占用,可以更改为使用其它端口。详尽见:Tomcat端口配置(详尽)
四、配置文件编码问题
Tomcat启动时会调用几个相关配置文件,假如上面出现了不是UTF-8的字符,或则文件保存时的编码格式不是UTF-8,tomcat编译时才会出错。即使是注释行内也要仔细检测。
出错现象:
Tomcat出现启动时死机一闪而过的现象,查询catalinalog日志,发觉有以下出错信息:
atorg.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475)
30-May-202223:57:18.015严重[main]org.apache.catalina.startup.Catalina.start未能启动服务器,服务器实例未配置
30-May-202223:57:44.468警告[main]org.apache.catalina.startup.Catalina.parseServerXml未能从[此处路径省略confserver.xml]加载服务器配置
.apache.xerces.internal.impl.io.MalformedByteSequenceException:1字节的UTF-8序列的字节1无效。
剖析:
查看相关的confserver.xml文件,发觉是由于注释了一些代码,在代码行里加入了英文说明,所以会出现无效UTF-8序列字节
解决方式:
删除英文,改成德语或拼音注释。将文件保存支持UTF-8的格式。
重启tomcat后故障解决。
五、启动时须要的配置文件编撰出错
所有相关的配置文件都要仔细检查,句型格式等出错就会出现tomcat启动后死机的现象。诸如是否按规范设置JAVA_HOME变量名,路径设置时或/是否正确,注意路径设置时前面不用多加“”或者“;”........
有没有和防火墙或其他app冲突。
假如tomcat显存配置有误也会造成tomcat死机(在Catalina文件里,显存配置有错误),解决办法:找到配置显存的句子,删掉错误,重新配置。
六、部分相关文件遗失
因意外或其他缘由国内linux主机,tomcat或jdk的一些jar文件被打包成pack格式,导致tomcat启动缺jar包,报错NoClassDefFound。
解决:修补jdk,补回jar
七、免安装的tomcat死机
免安装的tomcat双击startup.bat后,启动窗口一闪而过,但是tomcat服务未启动。
缘由:
在启动tomcat是linux tomcat debug模式启动,须要读取环境变量和配置信息,缺乏了这种信息,就不能登记环境变量,造成了tomcat的死机。
解决办法:
1.在已解压的tomcat的bin文件夹下找到startup.bat,右击->编辑。在文件头加入下边两行:
SETJAVA_HOME=D:Javajdk1.6.0_10(javajdk目录)
SETTOMCAT_HOME=E:tomcat-6.0.35(解压后的tomcat文件目录)
2.同样的。在已解压的tomcat的bin文件夹下找到shutdown.bat,右击->编辑。在文件头加入下边两行:
SETJAVA_HOME=D:Javajdk1.6.0_10(javajdk目录)
SETTOMCAT_HOME=E:tomcat-6.0.35(解压后的tomcat文件目录)
3.将你要发布/布署的web文件复制到tomcat的webapps目录下。
4.双击startup.bat即可启动tomcat,成功启动。
5.双击shutdown.bat即可停止tomcat。或则在已启动的tomcat窗口中直接ctrl+c也可停止tomcat。
此部份为转载,提供一种思路,有问题请联系原作者