3 回答

TA贡献1836条经验 获得超4个赞
就像其他答案所说的那样,这是因为您的WAR包含Servlet API类,但不应这样做。
如果使用Maven构建项目,则需要告诉Maven在编译和测试时使Servlet API可用,但不要将其包含在WAR中。正如有关依赖范围的Maven文档所述,您应该provided对Servlet API 使用范围:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
如果您的某些依赖关系将Servlet API作为编译依赖关系引入,则可能还必须显式排除Servlet API作为传递依赖关系:
<dependency>
<groupId>com.example</groupId>
<artifactId>frob-driver-core</artifactId>
<version>1.0.1</version>
<exclusions>
<exclusion>
<artifactId>servlet-api</artifactId>
<groupId>javax.servlet</groupId>
</exclusion>
</exclusions>
</dependency>
添加回答
举报