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>
添加回答
舉報