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中进行配置

相关推荐
IKUN家族10 小时前
Spring IoC&DI
java·spring·rpc
山荷枝11 小时前
03-框架--Spring
java·后端·spring
ChaHae-In11 小时前
SpringBoot统一功能处理
java·spring boot·后端
coder!mq12 小时前
说几个常见的语法糖?
java·开发语言·算法
gugucoding12 小时前
38. 【Java】Stream API(下):高级操作与性能
java·开发语言
心平气和量大福大12 小时前
android-实例-蒲公英-更新与安装-5-签名与生成APK
android·java·开发语言
9523613 小时前
Spring-cloud配置中心
java·spring·spring cloud·微服务
ydd10010013 小时前
寻找两个正序数组的中位数 Java 题解,二分分割详解
java·开发语言
真上帝的左手14 小时前
10. 软件设计&架构-Spring Security 7 整合CAS SSO 单点登录
java·spring·架构·sso
Zane199415 小时前
单例线程安全、生产者消费者、死锁:并发面试三连问串讲
java·后端