环境

  • Linux/Ubuntu20.04LTS
  • IntelliJ IDEA Community Editon 2021.1
  • apache-tomcat-8.5.68

异常

java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet

严重: 由于之前的错误,标记当前应用程序不可用

严重: 由于之前的错误,Context[/OASYS]启动失败

严重: 解析应用程序的web.xml错误,位置:[jndi:/localhost/OASYS/WEB-INF/web.xml]
Caused by: org.apache.catalina.LifecycleException: 
无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SSH]]

6月 29, 2021 9:37:27 下午 org.apache.catalina.startup.Catalina start
http://localhost:8077/SSH
严重: 所必需的服务组件启动失败,所以无法启动Tomcat

原因

  1. jar冲突
  2. 项目web.xml配置错误
  3. Tomcat服务器有问题

分析

  • 项目原先可运行,修改某些东西后导致不可运行,但没有修改过web.xml,故项目配置没错
  • jar仔细检查并没有缺少或冲突问题
  • 不加项目,本地运行可Tomcat,故Tomcat没有问题
  • 更换其他项目来运行tomcat,还是会有[由于之前的错误,Context[/XXX]启动失败],故当运行项目时就会有问题,不是项目的问题,就是tomcat某个配置问题

方案

在tomcat目录下conf/context.xml

context.xml里加上<Loader delegate="true" />

 <!-- creat by layuji on 2021-07-01 -->
    <Loader delegate="true" /> 

图片.png

【遇上雨季,吃定彩虹】 --Layuji


梁雨季
4 声望0 粉丝

平淡,才是生活的常态,那些兴奋或痛苦只是调味剂。只有足够沉稳的人,才会不被怪诞或新奇的事物诱惑,任世界繁华,终有自己的选择。