用了spring boot开发后,由于spring boot 起步依赖,自动集成了内嵌了tomcat,所以有一个月没有使用外置tomcat,今天新下载了个tomcat,发布war包时候一直报错,错误截图如下:

【随手记录】关于tomcat启动报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualS erverName()Ljava/lang/String; 随笔 第1张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

意思是找不到这个方法....

http://tomcat.10.x6.nabble.com/Question-concerning-java-lang-NoClassDefFoundError-javax-servlet-ServletContext-td1990932.html 这篇文章找到了答案:

【随手记录】关于tomcat启动报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualS erverName()Ljava/lang/String; 随笔 第2张

意思是 可能在tomcat外面配置了其他的servlet-api.jar包 且这个jar包跟你要启动的tomcat版本不一致...

想起来之前把servlet-api.jar放到jdk安装目录的lib去了,由此导致跟新下载的tomcat版本不一致→_→

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄