eclipse项目修改完library报错(Eclipse项目常见问题处理)

首页常识更新时间:2023-07-16 09:33:57

错误一:Description Resource Path Location Type Archive for required library: '文件路径’is not a validate ZIP file

这个错误的原因是因为Maven库没有更新的原因,找到路径下的文件,删除,然后更新一下项目,把里面的jar包更新即可

错误二:Maven项目下update maven后eclipse报错:

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

问题背景

工程为maven工程,ContextLoaderListener类位于spring-web-3.1.0.RELEASE.jar包中。检查了maven的pom.xml,依赖引入正常。在工程Maven Dependencies视图中也能看到spring-web-3.1.0.RELEASE.jar包被正常引入进来了。

错误原因:

进入到tomcat的部署路径.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\下检查了一下,发现工程部署后在WEB-INF文件夹下没有生成lib目录,正常情况下,会生成lib目录并把工程的所有依赖jar包都部署到该目录下。

解决方案:

1.右键点击项目--选择Properties

选择Deployment Assembly,在右边点击Add按钮,在弹出的窗口中选择Java Build Path Entries

2.点击Next,选择Maven Dependencies

3.点击Finish,然后可以看到已经把Maven Dependencies添加到Web应用结构中了

操作完后,重新部署工程,不再报错了。然后我们再到.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\目录下,发现工程WEB-INF目录下自动生成了lib目录,并且所有的依赖jar包也都已经部署进来。问题因此解决。

错误三:在使用maven的pom.xml文件导入需要的jbpm4.4的jar包的时候,出现了许多的问题。因为在导入jbpmjar包的过程中,也会产生一些其他的依赖包,所以会有版本冲突的问题,这里、将遇到的几个问题罗列出来,希望也可以帮助大家:

Q1:log4j和slf4j的版本冲突问题

这两个包导入的过程中会有两个包的绑定的jar包,slf4j-log4j,但是启动tomcat的时候会出现提示说版本号的冲突,版本更新之后还是会有这个问题。后来把依赖包slf4j-jdk这个依赖包删了之后就没有这个问题了

Q2:异常:java.lang.LinkageError: loader constraint violation: when resolving interface method

异常:java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/Expression......

jbpm4 在tomcat6 下面ssh2 这个错误!

原因是项目中WEB-INF/lib中的三个jar包(juel.jar, juel-engine.jar, juel-impl.jar)和tomcat6下lib中jar包(el-api.jar)冲突

解决方法:方法一:换成tomcat5.5 一点问题也没有了

方法二:将juel.jar, juel-engine.jar, juel-impl.jar这三个包复制到tomcat6下lib中,并删除原来的el-api.jar,切记要把WEB-INF/lib中的juel.jar, juel-engine.jar, juel-impl.jar删除。不然还是要冲突。

关于JBPM4与S2SH整合的异常:expression factory class not found : javax.el.ELException: expression factory

这些异常就是jar包冲突导致的,解决办法有两种:

1、第一种解决办法:在你的tomcat目录里面有一个lib的jar包文件夹,tomcat\apache-tomcat-6.0.14\apache-tomcat-6.0.14\lib,里面有一个el.jar的jar包,就是这个jar包和jbpm4的juel-api.jar、juel-engine.jar和juel-impl.jar三个jar包之间的冲突,在配置的时候不要更改tomcat\apache-tomcat-6.0.14\apache-tomcat-6.0.14\lib里面的el.jar包,就放置在这个lib里面,而在导入jbpm4的jar包到project项目里面的时候,去掉WEB-INF里面的lib里面的juel-api.jar、juel-engine.jar三个jar包就不会产生这个异常了!

2、第二种解决办法就是:将tomcat\apache-tomcat-6.0.14\apache-tomcat-6.0.14\lib里面的el.jar这个jar包删除,将juel-api.jar、juel-engine.jar和juel-impl.jar三个jar包导入到tomcat\apache-tomcat-6.0.14\apache-tomcat-6.0.14\lib里面,然后在导入jbpm4的jar包到WEB-INF的lib里面的时候删除juel-api.jar、juel-engine.jar和juel-impl.jar这三个jar包就可以了,这时候tomcat里面就有了这三个jar包了,不用在WEB-INF里面的lib再去配置了!

,
展开阅读全文
推荐内容
热门内容
热门文章

© 2007-2022 http://www.anhuiqq.cn,All Rights Reserved.