linux中启动tomcat,显示tomcat started.实际却没启动的问题

问题背景:

在linux复制tomcat,将tomcat中webapps目录下自己原来发布过的项目直接删除后启动tomcat

./startup.sh

在linux中启动tomcat后,控制台显示tomcat started,查看tomcat却没有进程启动。

ps -ef | grep tomcat

发现并没有tomcat启动。

由于之前修改了配置等文件,于是找了很久,以为是配置改错了。

最后使用控制台输出日志的方式启动,

./catalina.sh run

查看启动日志发现其中一行:

Tomcat 8.0 启动失败 Caused by: The main resource set specified [*] is not valid

里面显示说我曾经的一个项目没有找到,那个项目正是我删除的项目。

于是检查发现,是之前在tomcat上发布过该项目,但是之后我又删除了它,因此无法找到这个目录。

解决办法:

解决办法最后进入了tomcat的安装目录中/conf/server.xml文件,找到<context. 标签开头的代码,把和报错项目相关的行删除!然后再次启动tomcat。

./startup.sh
ps -ef | grep tomcat

发现tomcat启动成功。

补充:

启动tomcat的方式:

切换到tomcat主目录下的bin目录(cd usr/local/tomcat/bin)
1,启动tomcat服务

方式一:直接启动 ./startup.sh
方式二:作为服务启动 nohup ./startup.sh &
方式三:控制台动态输出方式启动 ./catalina.sh run 动态地显示tomcat后台的控制台输出信息,Ctrl+C后退出并关闭服务

解释:
通过方式一、方式三启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止,通过方式二可以作为linux服务一直运行
通过方式一、方式二方式启动的tomcat,其日志会写到相应的日志文件中,而不能动态地查看tomcat控制台的输出信息与错误情况;通过方式三可以以控制台模式启动tomcat服务,直接看到程序运行时后台的控制台输出信息,不必每次都要很麻烦的打开catalina.out日志文件进行查看,这样便于跟踪查阅后台输出信息。tomcat控制台信息包括log4j和System.out.println()等输出的信息。
2,关闭tomcat服务

./shutdown.sh
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐