cannot be cast to javax.servlet.Servlet 解决

使用maven创建web项目的时候,通过添加依赖的方式来添加servlet-api,如下

通过maven的命令(tomcat:run)来启动项目,发现访问的时候报错,错误如下:

错误排查:

首先查看servlet,发现继承的是HttpServlet,并没有问题

在查看web.xml的配置,也发现没有问题

然后到网上查看资料得知是jar冲突。

因为在maven中的jar是有依赖范围的,而我们需要的servet-api.jar在tomcat中有,如果我们项目有也有这个jar的话,就会导致jar冲突。

我们可以打开自己本地的tomcat看一下里面有的jar,可以看到是有一个servlet-api.jar

解决办法:

在pom.xml中修改jar的依赖范围

再次启动项目,访问成功

posted @ 2019-03-30 20:46  yaochunguang  阅读(2686)  评论(0编辑  收藏  举报