• linux中使用命令启动tomcat后显示tomcat started,实际却没启动的问题


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

    问题背景:

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

    ./startup.sh
    
    • 1

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

    ps -ef | grep tomcat
    
    • 1

    发现并没有tomcat启动

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

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

    ./catalina.sh run
    
    • 1

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

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

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

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

    解决办法:

    解决办法最后进入了tomcat的安装目录中/conf/server.xml文件,找到

    ./startup.sh
    ps -ef | grep tomcat
    
    • 1
    • 2

    发现tomcat启动成功。

    补充:

    启动tomcat的方式:

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

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

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

    ./shutdown.sh
    
    • 1
  • 相关阅读:
    vue 中 父子组件值交互怎么使用 this.$emit
    Howler.js HTML5声音引擎
    android的三种动画
    vue3 的组件通信以及ref的使用
    RK3588 android12删除launcher3无法使用“近期任务“解决办法
    工作任务闭环
    win10升级到win11后电脑睡眠后发热严重
    [附源码]Python计算机毕业设计Django的花店售卖系统的设计与实现
    基于ssm的校运会管理系统设计与实现-计算机毕业设计源码+LW文档
    【微信小程序开发】小程序微信用户授权登录(用户信息&手机号)
  • 原文地址:https://blog.csdn.net/m0_67401499/article/details/126582876