我正在使用ant来构建我的java程序。它编译得很好,但是当我去运行单元测试类时,它找不到类文件。我把我的类路径弄得乱七八糟的,而这个例外却不断出现?
库中的jars如下:
构建文件build.xml
<project name="PillarWorkspaceHiring" default="test" basedir=".">
<description>
Author: April Randolph for a evening of babysitting. Uses Ant to build the junit, hamcrest java program.
Babysitting Kata
</description>
<!-- Set global properties for this build -->
<property name="test.src.dir" value="src/main/java"/>
<property name="test.build.dir" value="build/test"/>
<property name="main.build.dir" value="build/main"/>
<property name="main.src.dir" value="src/main/java"/>
<property name="full-compile" value="true"/>
<target name="clean" description="clean up">
<!-- Delete the ${dir.build} -->
<delete verbose="${full-compile}" >
<fileset dir="${main.build.dir}" includes="**/*.class" />
<fileset dir="${test.build.dir}" includes="**/*.class" />
</delete>
</target >
<path id="classpath.test">
<pathelement location="lib/junit-4.12.jar"/>
<pathelement location="lib/hamcrest-core-1.3.jar"/>
<pathelement location="lib/ant.jar"/>
<pathelement location="${main.build.dir}"/>
</path>
<!-- Testsuite-->
<target name="test" depends="test-compile" >
<junit printsummary="on" haltonfailure="yes" fork="true">
<classpath>
<path refid="classpath.test"/>
<pathelement location="${test.build.dir}"/>
</classpath>
<formatter type="brief" usefile="false" />
<batchtest>
<fileset dir="${test.src.dir}" includes="**/*Test*.java" />
</batchtest>
</junit>
</target>
<!-- Build main class files -->
<target name="compile" >
<mkdir dir="${main.build.dir}"/>
<javac srcdir="${main.src.dir}" destdir="${main.build.dir}" includeantruntime="false">
<classpath refid="classpath.test"/>
</javac>
</target>
<target name="test-compile" depends="compile">
<mkdir dir="${test.build.dir}"/>
<javac srcdir="${test.src.dir}" destdir="${test.build.dir}" includeantruntime="false">
<classpath refid="classpath.test"/>
</javac>
</target>
</project>
充气: hamcrest\SelfDescribing.class
我从控制台拿来的
test:
我做错了什么?
发布于 2016-06-15 16:01:16
您需要在类路径中添加junit.jar
和hamcrest-all-X.X.jar。
具体来说,您需要库文件夹中的hamcrest-core-1.3.jar
(对于jUnit 4.11)。
UPDATE1:
请按照以下步骤:
Build Path
,然后从其菜单中选择Add Libraries
。JUnit
,然后单击Next。JUnit4
,然后完成。和
UPDATE2:
如果UPDATE1不起作用,
您可以下载JUnit 4.7
并将junit-4.7.jar
放到您的构建路径中(而不是旧版本)。可以解决你的问题
https://stackoverflow.com/questions/37840298
复制相似问题