Spring-Boot启动异常NoClassDefFoundError: javax/servlet/Servlet

Posted zhengwangzw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring-Boot启动异常NoClassDefFoundError: javax/servlet/Servlet相关的知识,希望对你有一定的参考价值。

解决方案:

1. 查看pom包中是否包含如下依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>compile</scope>
 </dependency>

2.   如果已经包含,查看<scope>provided</scope>配置的是否为compile(推荐先注释掉)

     原因:provided:这个scope假定对应的依赖会由运行这个应用的JDK或者容器来提供。最好的例子就是servlet API。任何在provided scope下定义的依赖在构建时的类路径里是可用的,但是不会被打包到最终的artifact中,所以可以开发的时候注释掉(默认scope为compile),上线时候打开(容器Tomcat提供包)。

 

以上是关于Spring-Boot启动异常NoClassDefFoundError: javax/servlet/Servlet的主要内容,如果未能解决你的问题,请参考以下文章

求助,spring-boot升级带来的异常

解决spring-boot启动异常Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContain

spring-boot 启动时候 出现异常:The bean 'xxx' could not be injected as a 'xx.xxxx' because it

Spring-boot 启动报错 调试小技巧

spring-boot实战07:Spring Boot中Web应用的统一异常处理

Java NoClassDef 通过终端执行时发现错误