maven2报xxxServlet cannot be cast to javax.servlet

此博客为转载内容,转载自https://www.cnblogs.com/JAYIT/p/6889675.html ,涉及Java相关知识。
由于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的定义,解决此类包冲突产生的问题

转载于:https://www.cnblogs.com/JAYIT/p/6889675.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值