我浪费了2个小时试图让ant junit任务正常工作。首先,我无法找到ant-junit.jar
文件,但我设法在maven页面中找到它。之后我把它放在几个地方(~/.ant/lib
,/usr/share/ant/lib
)但没有运气..我仍然收到这个错误:
Cause: the class org.apache.tools.ant.taskdefs.optional.junit.JUnitTask was not found.
This looks like one of Ant's optional components.
所以我在寻找:
答案 0 :(得分:1)
1。 Ant下载分发
Expulated tree:
➜ apache-ant-1.9.4 tree lib
lib
├── ant-junit.jar
├── ant-junit4.jar
2。您的测试类路径
就像任何其他测试依赖项一样。
(不相关,但是发行版不是绝对的第一个你看的地方吗?它“字面上”花了我五分钟下载,解压缩,寻找与JUnit相关的文件,并做一个tar xvf
来理智 - 检查缺少的班级参考。)
答案 1 :(得分:1)
您可以从ANT任务中下载Maven Central的依赖关系,如下所示:
<available classname="org.junit.runner.Runner" property="junit.installed"/>
<target name="install-junit" description="Install junit" unless="junit.installed">
<mkdir dir="${user.home}/.ant/lib"/>
<get dest="${user.home}/.ant/lib/ant-junit.jar" src="http://search.maven.org/remotecontent?filepath=org/apache/ant/ant-junit/1.9.4/ant-junit-1.9.4.jar"/>
<get dest="${user.home}/.ant/lib/junit.jar" src="http://search.maven.org/remotecontent?filepath=junit/junit/4.11/junit-4.11.jar"/>
<fail message="Ivy has been installed. Run the build again"/>
</target>
更好的选择是使用Apache ivy来管理依赖项。这里有一个示例构建文件: