返回列表 发帖

BUILD问题“Class not found : Lorg/apache/commons/logging/Log”

别人的project, 从CVS下载到local, 在elipse BUILD时出现以下错误,不知哪位大虾知道哪里出问题了


[java] <12-May-2014 4:41:15 o'clock PM EDT> <Warning> <EJB> <BEA-010054> <EJB Deployment: RHMCToolsClassic has a class ca.gc.ccra.rhmc.tools.tieri.ejb.RHMCToolsClassic that is in the classpath. This class should only be located in the ejb-jar file.>

[java] <12-May-2014 4:41:16 o'clock PM EDT> <Warning> <EJB> <BEA-010202> <Call-by-reference is not enabled for the EJB 'RHDataCachingBroker'. The server will have better performance if it is enabled. To enable call-by-reference, set the enable-call-by-reference element to True in the weblogic-ejb-jar.xml deployment descriptor or corresponding annotation for this EJB.>

[java] There are 1 nested errors:

[java] java.lang.NoClassDefFoundError: Class not found: Lorg/apache/commons/logging/Log;

[java] at weblogic.ejb.container.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:346)

[java] at weblogic.ejb.container.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:286)

[java] at weblogic.ejb.container.ejbc.EJBCompiler.complianceCheckJar(EJBCompiler.java:952)

[java] at weblogic.ejb.container.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:920)

[java] at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:246)


[
java] at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:552)
。。。

BUILD FAILED


C:\Dev\rhmc\rhmc\rh\implementation\build.xml:334

build.xml的程序片段如下:

  1. <!-- precompile jsps, generate ejb stubs, etc. -->
  2. <java classname="weblogic.appc" fork="yes" dir="${BUILD}" failonerror="yes" classpathref="appc-classpath">
  3. <jvmarg line="-Xms128M -Xmx256M -Djava.io.tmpdir=c:/temp" />
  4. <arg line="-verbose -forceGeneration -keepgenerated -iiop -basicclientjar ${DIST}/rhmc.codes.ear" />
  5. </java>
复制代码

提问赏金:30金币
获奖名单 : 还未派发赏金

这个很明显啊,

去Apache下载common-logging的JAR包,丢到该项目的CLASSPATH加载的JAR路径下即可。
生命没有假期!
如果生命只剩下最后一秒,你可会想到我?

TOP

本帖最后由 annie 于 2014-5-15 00:36 编辑

谢谢李老师~

发帖前还特意检查了,有common-logging的JAR包啊,而且放的地方我认为也没问题啊~ 整个project是从CVS下载到C盘,所有的.jar包也跟着下载

说下我的检查方法,看看是不是错了。
报错的build.xml:334在我主贴上,具体如下:
  1. <java classname="weblogic.appc" fork="yes" dir="${BUILD}" failonerror="yes" classpathref="appc-classpath">
复制代码


其classpathref="appc-classpath",而中build.xml中appc-classpath的定义如下
  1. <path id="appc-classpath">
  2. <fileset dir="${BUILD}/rh_jar">
  3. <include name="${RH_JAR_FILE}"/>
  4. </fileset>

  5. <fileset dir="${LIB}">
  6. <include name="rccr.ccr.jar"/>
  7. <include name="commons-logging.jar"/>
  8. <include name="rccr.desktop.jar"/>
  9. <include name="brom.busdate.client.jar"/>
  10. </fileset>

  11. <fileset dir="${weblogic_lib}">
  12. <include name="weblogic.jar" />
  13. </fileset>
  14. </path>
复制代码

由此我们可以看出commons-logging.jar在${LIB}下,而"${LIB}"的定义如下:
  1. <property name="LIB" value="${basedir}/lib"/>
复制代码


也就是和build.xml同目录下lib文件夹里。具体查找如下:
C:\Dev\rhmc\rhmc\rh\implementation\build.xml
C:\Dev\rhmc\rhmc\rh\implementation\lib\commons-logging.jar


另common-logging.jar需要什么支持吗?会不会是我现有的project用的某些东东(比如weblogic, java)的版本和同事的不一样,2个版本不能兼顾?

TOP

返回列表