SpringBoot 项目整合启动报错:javax.servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/ser

报错信息如下:java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/ser

历经此坑的心路历程,就是一个简单的服务项目整合到web项目中,期间并没有在意jar包依赖的问题,此问题只是简单登录跳转的问题,没有太在意,除了访问登录页的时候报错外,其他功能正常运行,没有太在意,慢慢拖拖的弄了几天不见好转,时间过去了,问题却没有解决,周围都是关注的目光,那心理压力,我去,可以说一个jar包版本的问题,或者说是jar包冲突,其实就是jar包中HttpServletRequest类中没有getHttpServletMapping()方法,需要使用,引用这个jar包中的这个类,但是没有该方法,我的天,找这个问题的解决方法,真的是找得昏天暗地,真的是可以让一个人睡不好觉,吃不下饭,直到怀疑人生后,依旧想不到什么原因,直到偶然看过一篇文章后的慢慢思考,是不是可以考虑升级jar包版本,让这个类不存在于该jar包中,从而避开引用该类,逐步地,一点点的分析,查询,验证,终于,成功了,与猜想的一样,久违的灿烂的阳光,久违的灿烂的笑容,终于遇见了,一下子打开了,那久锁的眉头,找到原因了,与猜想的一样,升级后,问题彻底解决了

问题归结为一句话:一个引入错误jar包中类的冲突

问题原因分析:springboot的web项目中内嵌了Tomcat,Tomcat中自身有引入了类:javax.servlet.http.HttpServletRequest包含相应的方法,保证自身的正常运行,而项目中引入了javaee-api这个7.0版本的jar包,恰巧的是,这个版本的jar包中就是有这个类,但是却并没有getHttpServletMapping()方法,从而项目启动的时候报错:NoSuchMethodError: javax.servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/ser

解决方法:升级javaee-api这个包到没有该类的版本,或者有该方法的版本也行

最后问题解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值