我在蚂蚁以下任务:
<target name="init-junit" depends="init">
<mkdir dir="${junit.reports.individual}" />
<property name="running-junit" value="true" />
</target>
<target name="run-tests" depends="init-junit, compile">
<junit>
<classpath refid="classpath" />
<formatter type="xml" />
<batchtest todir="${junit.reports.individual}">
<fileset dir="${dir.build}" includes="**/*Test*" />
</batchtest>
</junit>
</target>
<target name="compile-reports" depends="run-tests">
<junitreport todir="${junit.reports}" tofile="junit-report.xml">
<fileset dir="${junit.reports.individual}" />
<report format="frames" todir="${junit.reports}/html" />
</junitreport>
</target>
与${dir.build}
是用我所有的.class
文件的目录。 JUnit测试工作的时候在eclipse运行它们,但是当我运行它们通过蚂蚁(通过蚀或终端中运行)失败;他们每个人都抛出以下异常:
org.fscit.{name of class} java.lang.ClassNotFoundException: org.fscit.{name of class} at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247)
我有junit-4.8.2.jar
在我lib
文件夹,这是与ID,classpath
类路径中,我的build.xml在我的项目的根目录,其basedir
属性设置为.
。谁能帮我?
你需要对你的类的目标目录中的类路径。你应该在你的classpath元素${dir.build}
。
<path id="classpath">
<pathelement location="${dir.build}"/>
使用pathelement任务
<pathelement location="${dir.build}" />
而不是文件集的任务
<fileset dir="${dir.build}" />
这对我的作品(蚂蚁版本是1.7.1)