导入工程tomcat与工程jar冲突问题处理(javax.servlet.http.HttpServlet was not found, JstlCoreTLV cannot be cast to )

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/whandgdh/article/details/80775268

今天重装mye2017后,重新导入工程时,报如下错误:
这里写图片描述
看到导包的地方报错,说明是jar包问题,根据报错信息

Cannot find the class file for javax.servlet.http.HttpServletRequest
//找不到javax.servlet.http.HttpServletRequest相关的class文件

查询javax.servlet相关的jar包:servlet-api.jar,将servlet-api.jar导入项目后以为就木有问题了,
结果原先的问题不见了,新问题又出现了
这里写图片描述
主要报错信息如下

 Cannot find the class file for javax.servlet.jsp.JspWriter
 //找不到javax.servlet.jsp.JspWriter的class文件

还是熟悉的味道,少导jar包了,javax.servlet.jsp依赖jar包:jsp-api.jar
再次导入jsp-api.jar,项目应该不会报错了。
这里写图片描述
果然,工程没有红叉了,然而当把工程部署导tomcat上时时,
这里写图片描述
主要报错信息如下:

Could not publish to the server.
Tomcat version 8.5 requires Java SE 7 or later.
  //不能发布server,因为tomcat8.5要求jdk 7或者以上版本

再看看项目用的时jdk 6,所以重新配置tomcat 6.
这里写图片描述

重新部署项目,启动tomcat,没有报错,但是访问项目时又又报错了……
这里写图片描述

主要报错信息如下:

 Servlet.service() for servlet jsp threw exception
java.lang.ClassCastException: org.apache.taglibs.standard.tlv.JstlCoreTLV cannot be cast to javax.servlet.jsp.tagext.TagLibraryValidator

然后问度娘 说的是可能在tomcat服务器中也有jar包 ,可能与项目的jar包有冲突,找到tomcat的lib,果然有刚刚导入的两个jar包
这里写图片描述

那现在问题来了,如果不导jar包,项目会报错,如果导包了,又会jar包冲突,要肿么办?
从度娘找到了解决办法,先把冲突的jar包删除
这里写图片描述

这里写图片描述

这里写图片描述
项目没有报错了,重新跑起来后,能正常访问了,
换个mye2017 真心不容易啊,终于正常了!
这里写图片描述

猜你喜欢

转载自blog.csdn.net/whandgdh/article/details/80775268
今日推荐