tomcat启动后日志不更新问题

打包好的war包无法在CentOS的tomcat运行。

情况描述:将项目打包好的war包取名为ROOT丢到Tomcat的webapps文件夹下(已经提前删除了Tomcat中自带的文件),理论上来说,Tomcat会自动解析ROOT包并为我们部署,但我在使用startup.sh命令后,项目并没有像我想想的一样成功部署。

排错流程:

  1. 查看进入Tomcat的logs文件夹中查看日志,发现日志上说Tomcat使用的端口被占用了,于是使用CentOS查找使用8080端口的程序,kill掉该程序后再次启动Tomcat

  2. 项目依旧没有部署成功,此时查看日志发现日志并没有更新,于是我怀疑是不是项目代码出了问题,回到个人电脑检查配置文件是否适配了CentOS,检查自己的电脑是否能跑动项目,检查完毕都没有问题,

  3. 考虑另外一个问题,是否是CentOS上的Tomcat在部署项目的时候没有能成功启动我的项目,关于这个问题,我的项目代码里面已经有继承一个能被Tomcat访问的父类,重写了里面一个方法,确保CentOS上的Tomcat能访问到,然而这也没能解决问题。

  4. 于是上网百度我面对的问题,启动Tomcat后日志文件没有更新

  5. 博客上有不少遇到相同问题的开发者,它们表示也遇到这种问题,解决的方案是在bin目录下使用./catalina.sh run的命令,在该命令下使用start.sh命令就可以解决该问题了

参考博客:https://blog.csdn.net/minolk/article/details/83305936

如果只是解决问题的话,看到这里就可以停了哈,以下是关于这个方法为什么能解决问题的研究:

./catalina.sh run的说明

Linux下Tomcat启动后显示控制台:

采用 ./startup.sh 启动,则没有显示控制台。

要像windows一样显示控制台,则 : ./catalina.sh run

startup.sh 调用了catalina.sh ,负责Tomcat的启动与关闭的实际上是catalina.sh脚本

参考博客:https://blog.csdn.net/azhegps/article/details/53993615

研究了一段时间也没能得到解决方案,决定先把问题搁置,等以后实力继续提升了说不定这个问题就能解决了。

上一篇:【Tomcat】java.lang.NoSuchMethodError和javax.naming.NamingException


下一篇:macOS Catalina显示Safari 打不开网页,因为无法连接到服务器