org.apache.jasper.JasperException:Unable to read TLD "META-INF/c-1_0-rt.tld" from JAR file jstl-1.2....

本文讨论了将项目从Eclipse EE版迁移到MyEclipse时遇到的jsp冲突问题,以及如何通过调整buildpath避免冲突,并解决了配置导致的编译错误问题。通过将某些jar包移除,使得项目在MyEclipse环境下正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前两天把项目从eclipse EE版搬到MyEclipse中了。配置好jdk,确定build path中没有报错后,在tomcat中运行。结果,报错:

1 org.apache.jasper.JasperException: /common/error.jsp(12,0) Unable to read TLD "META-INF/c-1_0-rt.tld" from JAR file "file:/E:/apache-tomcat-6.0.29/webapps/flex/WEB-INF/lib/jstl-1.2.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV
View Code

上网查并询问同事之后,得知原因是:我们的项目下存在jsp-api.jar和servlet-api.jar,同时,tomcat下的lib文件下,也存在这两个文件,如图:

我们项目中的这两个jar包和tomcat中自带的jar包冲突了。只要在项目build path中去掉这两个jar包,使它们不被加载编译就行,不需要在项目中删除这两个jar包。

我们项目中的这两个jar包是当项目部署到Weblogic上时使用的,所以在build path中去掉,不会影响。

我很奇怪的是为啥在eclipse下运行的时候没有这个问题……

然后,我启动项目,又报错了:

1 java.lang.Error: Unresolved compilation problems
View Code

编译错误。我对比了eclipse和MyEclipse中的compiler,在eclipse中:

  菜单window→properties→搜索compiler,查看,compiler是1.6,

                 installed JREs,1.6

  项目→右击→properties→搜索compiler,查看,compiler是1.6

在MyEclipse中:

  菜单window→properties→搜索compiler,查看,compiler是1.6,

                 installed JREs,1.6

  项目→右击→properties→搜索compiler,查看,compiler是1.6

配置一样。只能试着修改一下,我把MyEclipse的compiler改成1.5,启动项目,运行正常了。在浏览器中打开也正常了。

 

转载于:https://www.cnblogs.com/mySummer/p/4729614.html

异常报告 消息 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core] 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 org.apache.jasper.JasperException: 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core] org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:37) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:270) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:77) org.apache.jasper.compiler.TagLibraryInfoImpl.generateTldResourcePath(TagLibraryInfoImpl.java:248) org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:122) org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:408) org.apache.jasper.compiler.Parser.parseDirective(Parser.java:461) org.apache.jasper.compiler.Parser.parseElements(Parser.java:1289) org.apache.jasper.compiler.Parser.parse(Parser.java:130) org.apache.jasper.compiler.ParserController.doParse(ParserController.java:243) org.apache.jasper.compiler.ParserController.parse(ParserController.java:106) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:195) org.apache.jasper.compiler.Compiler.compile(Compiler.java:368) org.apache.jasper.compiler.Compiler.compile(Compiler.java:346) org.apache.jasper.compiler.Compiler.compile(Compiler.java:332) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:591) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:288) jakarta.servlet.http.HttpServlet.service(HttpServlet.java:710) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ):注意 主要问题的全部 stack 信息可以在 server logs 里查看 Apache Tomcat/11.0.8
最新发布
06-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值