java-无法从JAR文件错误中读取TLD“ META-INF / stripes.tld”
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-无法从JAR文件错误中读取TLD“ META-INF / stripes.tld”,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3316字,纯文字阅读大概需要5分钟。
内容图文
![java-无法从JAR文件错误中读取TLD“ META-INF / stripes.tld”](/upload/InfoBanner/zyjiaocheng/654/60d6e76baf2b4dc7b6d1568dc19fe88c.jpg)
在将我们的Web应用程序主要升级到ivy以进行构建管理之后,我还遇到了一个不寻常的错误,其中还包括更新所有涉及的主要库.当我们设法通过单元测试时,将Web应用程序部署到Tomcat并尝试在浏览器中导航到它时,会出现以下错误:
org.apache.jasper.JasperException: /index.jsp(1,1)
/layout/taglibs.jsp(2,77) Unable to read TLD “META-INF/stripes.tld”
from JAR file
“file:/Library/Tomcat/apache-tomcat-6.0.32/webapps/cga/WEB-INF/lib/stripes-1.5.6.jar”:
org.apache.jasper.JasperException: Failed to load or instantiate
TagExtraInfo class: net.sourceforge.stripes.tag.ErrorsTagExtraInfo
我已经检查了通常的可疑对象,并验证了jar文件是否位于正确的位置,tld文件是否存在于jar中,等等.同样,搜索错误仅显示有限数量的退货,主要与具有相同错误的邮件列表问题有关.我已经看完了这篇文章,也很幸运地尝试了这些解决方案.
关于什么可能导致此错误的任何想法?
我收到的完整错误跟踪如下:
org.apache.jasper.JasperException: /index.jsp(1,1) /layout/taglibs.jsp(2,77) Unable to read TLD "META-INF/stripes.tld" from JAR file "file:/Library/Tomcat/apache-tomcat-6.0.32/webapps/cga/WEB-INF/lib/stripes-1.5.6.jar": org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: net.sourceforge.stripes.tag.ErrorsTagExtraInfo
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88)
org.apache.jasper.compiler.Parser.processIncludeDirective(Parser.java:300)
org.apache.jasper.compiler.Parser.parseIncludeDirective(Parser.java:333)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:442)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1397)
org.apache.jasper.compiler.Parser.parse(Parser.java:130)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:347)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:326)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
解决方法:
实际上,由于错误消息并不能完全反映出实际问题是什么,因此花了一些时间来追查,但是在一个简而言之的外壳中,这是一个类似的听起来错误(例如,无法从JAR读取TLD“ META-INF / *.tld”文件”),当您部署的JAR文件与Tomcat本身部署的JAR文件之间存在类冲突时,似乎会发生这种情况.事实证明,这是我的错误的原因,因为存在两个冲突的文件(javax.servlet.jsp-api-2.2.1.jar和el-api-1.0.jar).
由于此问题似乎弹出了很多,因此这里有一些故障排除提示:
>仔细检查您要部署的内容,以确保没有意外发生,如果您使用的是依赖项管理器,请确保依赖项的依赖项不会引起问题.
>仔细检查以确保您清除了先前版本中的所有内容并再次进行了部署,令人惊讶的是,这一次又一次引起了我的沮丧.
>不要将servlet-api.jar直接包含在您自己的lib中,而应使用具有可变路径-guide的外部JAR.
>不要期望JAR文件被命名为您期望的名称,或者不要包含您认为不会的名称,如果必须的话,请打开它们以再次检查其内容.
内容总结
以上是互联网集市为您收集整理的java-无法从JAR文件错误中读取TLD“ META-INF / stripes.tld”全部内容,希望文章能够帮你解决java-无法从JAR文件错误中读取TLD“ META-INF / stripes.tld”所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。