servlet整合tomcat项目启动报错解决,org.apache.tomcat.util.descriptor.web.WebXml.setVersion

报错如图所示,项目启动会报错

java 复制代码
08-Jun-2026 20:24:36.377 警告 [RMI TCP Connection(2)-127.0.0.1] org.apache.tomcat.util.descriptor.web.WebXml.setVersion 未知版本字符串 [4.0]。将使用默认版本。
08-Jun-2026 20:24:36.452 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start: 
	org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
08-Jun-2026 20:24:36.454 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.tomcat.util.modeler.BaseModelMBean.invoke Exception invoking method manageApp
	java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
08-Jun-2026 20:24:36.458 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.tomcat.util.modeler.BaseModelMBean.invoke Exception invoking method createStandardContext
	javax.management.RuntimeOperationsException: Exception invoking method manageApp
		at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:294)

查阅了资料,显示应该是路径配置的问题,检查了项目,路径配置前都加了"/",不是这里的问题,又看了一下原来是路径配置重复了,不仅在web.xml进行配置了,还用注解又配置了一遍,如下图这样,进行了双重配置,删掉一种方式,只留下一种,报错就解决啦

只需要一种路径访问配置方式即可,如果只是配置路径,使用注解的方式就可以,如果还有其他复杂的操作,推荐在web.xml中进行配置

相关推荐
像我这样帅的人丶你还8 小时前
Java 后端详解(四):分页与搜索
java·javascript·后端
她的男孩8 小时前
数据权限为什么不能只靠注解?Forge 的 Mapper 层 SQL 改写源码拆解
java·后端·架构
tntxia9 小时前
Mybatis的日志输入
java
亦暖筑序11 小时前
Java 8老系统Browser Agent实战:三层拦截把AI操作后台变成可审计流程
java·后端·设计模式
用户2986985301414 小时前
Java 实现 Word 文档加密与权限解除
java·后端
Yeats_Liao14 小时前
14:Servlet中的页面跳转-Java Web
java·后端·架构
未秃头的程序猿14 小时前
告别"if-else地狱"!Java 21模式匹配,代码优雅了10倍
java·后端·面试
鹤望兰67515 小时前
字节跳动国际支付-后端开发-三面面经
java
Flittly15 小时前
【AgentScope Java新手村系列】(14)人机交互
java·spring boot·spring
RainCity15 小时前
Java Swing 自定义组件库分享(十二)
java·笔记·后端