这是部署描述符版本问题致使的java
解决办法换成以下配置:web
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
参考Element web-app must be declared错误解决办法api
在pom.xml的servelet-api里面加入tomcat
<scope>provided</scope>
完整内容app
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
缘由,依赖jar包跟tomcat冲突。maven
参考maven请求servlet报cannot be cast to javax.servlet.Servlet 解决ide