读书人

Junit单元测试Classpath配备

发布时间: 2012-07-19 16:02:20 作者: rapoo

Junit单元测试Classpath配置

配置单元测的Classpath时的一个比较奇怪的问题:

首先看一下单元测试的Classpath配置:eclipse编辑器右键点击->Run As...->Run Configurations->Classpath标签页如下:

Junit单元测试Classpath配备

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????图1

从图1可以看出,TestCase的Classpath配置分为两部分:

??? Bootstrap Entries?是 Jre类库;

??? User Entries 是用户配置的第三方类库,同时这里又包括项目的类库,即Default Classpath,其是项目Build Path的所有Jar包。及TestCase使用到的其它Jar包。

??? 我进行单元测试时发现了一个比较奇怪的问题,即在User Entries 根下配置Log4j.jar包时如果其在项目的Default Classpath上边时单元测试用例不会报异常,如图2:

Junit单元测试Classpath配备?

??????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 图2

但是如果把Log4j.jar移到项目的Default Classpath下边(如图3)时会有异常如下图4.

Junit单元测试Classpath配备

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 图3

Caused by: java.lang.NoSuchMethodError: org.apache.log4j.Logger.trace(Ljava/lang/Object;)Vat org.jbpm.internal.log.Log4jLog.trace(Log4jLog.java:74)at org.jbpm.pvm.internal.wire.xml.WireParser.<clinit>(WireParser.java:283)at org.jbpm.pvm.internal.cfg.ConfigurationParser.<init>(ConfigurationParser.java:46)at org.jbpm.pvm.internal.cfg.ConfigurationParser.<clinit>(ConfigurationParser.java:49)at org.jbpm.pvm.internal.cfg.ConfigurationImpl.parse(ConfigurationImpl.java:139)at org.jbpm.pvm.internal.cfg.ConfigurationImpl.setResource(ConfigurationImpl.java:118)at org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine(SpringHelper.java:47)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at java.lang.reflect.Method.invoke(Method.java:597)at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:115)... 39 more

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 图4

??? 这究竟是怎么回事呢?

?????

?

?

读书人网 >其他相关

热点推荐