我遵循这个suggestion在我的build.xml
文件中创建了一个Ant junit测试目标。测试目标如下:
<target name="test" depends="compile">
<junit>
<classpath>
<pathelement location="${test.compiled.classes.dir}" />
<pathelement location="${lib}/junit-4.12.jar"/>
<pathelement location="${lib}/hamcrest-core-1.3.jar"/>
</classpath>
<batchtest>
<fileset dir="${test.src.classes.dir}">
<include name="**/*Test*" />
</fileset>
</batchtest>
<formatter type="brief" usefile="false"/>
</junit>
哪里
${test.compiled.classes.dir}
=>是已编译测试类的位置(即project / ant / tmp / classes / junit / XxxTest.class)
${test.src.classes.dir}
=>是源测试类的位置(即project / src / test / junit / XxxTest.java)
${lib}
=>是所有外部jar文件所在的位置。
但是当我运行Ant(build.xml
)时,总是收到错误消息:
java.lang.noClassDefFounderror: XxxTest (wrong name: junit/XxxTest).
有人可以帮我解决这个问题吗?