1.问题描述
今天复习springMVC知识点时,写了一个简单的SpringMVC项目练练手,但是在Tomcat10运行时控制台没报错,浏览器出现java.lang.NoClassDefFoundError:javax/servlet/http/HttpServlet错误(如图1所示)

2.问题分析
出现了上述错误后,开始怀疑是代码出现问题,检查确认代码没有问题后将问题定位在tomcat服务器或项目依赖,在网上查阅一番发现不少同学出现了相同问题,问题关键就是tomcat10服务器,tomcat10将所有已经实现的API已经从 javax.到jakarta.(如图2所示)

3.问题解决
出现上述问题解决方法有以下两种:
3.1降低tomcat服务器版本,tomcat9替换tomcat10
因为tomcat10将所有已经实现的API已经从 javax.*到jakarta.*如果我们就是要用javax包下的接口或类只能降低tomcat版本
3.2修改项目的依赖
将mave依赖中的javax下的依赖
<dependency>
<groupId>javax.servlet</grou
Tomcat10运行SpringMVC项目报HttpServlet错误解决方案

在运行SpringMVC项目时,遇到Tomcat10浏览器访问报java.lang.NoClassDefFoundError: javax/servlet/http/HttpServlet错误。问题源于Tomcat10将javax.* API改为jakarta.*。解决方案包括降级Tomcat服务器至9版本,或者修改项目依赖,将javax下的依赖替换为jakarta.*的相应依赖。通过这些调整,可以成功解决此问题。
最低0.47元/天 解锁文章
1948

被折叠的 条评论
为什么被折叠?



