maven2报xxxServlet cannot be cast to javax.servlet
转载由于CacheFilter实现了javax.servlet.Filter接口,Filter是在servlet-api.jar里,因此pom中有
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<<version>2.4</version>
</</span>dependency>
但是tomcat里已经有servlet-api的包,而且版本可能会有不同,所以就会出现ClassCastException的问题
【解决办法】
servlet-api加入provided,如下:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
这样修改后,servlet-api.jar就不会在运行tomcat时被import进去了,不会与tomcat自带的servlet-api有冲突
【避免此类问题的建议】
注意pom.xml中关于包的scope的定义,解决此类包冲突产生的问题
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
IDEA中显示找不到javax.servlet
文章目录一、问题描述二、解决方案三、解决步骤1、打开Project Structure2、先点击lib再点击上面的+号3、选择Java,在打开的窗口中到tomcat的目录中找到`servlet-api.jar`4、点击应用,问题解决一、问题描述IDEA中显示找不到javax.servlet.二、解决方案这是我们少了servlet-api.jar这个jar包(在tomcat的lib目录里面找)三、解决步骤1、打开Project Structure(你能看到servlet-api是因为我已经引
tomcat jar servlet java intellij idea