我已尝试以编程方式调用Ant,但我遇到此错误
线程“main”中的异常java.lang.NoClassDefFoundError:org / apache / tools / ant / launch / AntMain
我尝试使用控制台单独运行build.xml,并在运行为ant build的eclipse中右键单击它。它运行没有问题。
我的示例蚂蚁测试类
public class AntTest {
public static void main(String[] args) {
File buildFile = new File("build.xml");
Project p = new Project();
p.setUserProperty("ant.file", buildFile.getAbsolutePath());
p.init();
ProjectHelper helper = ProjectHelper.getProjectHelper();
p.addReference("ant.projectHelper", helper);
helper.parse(p, buildFile);
p.executeTarget(p.getDefaultTarget());
}
}
我的示例build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="testproject" default="test" basedir=".">
<target name="test">
<echo message="Hello World" />
</target>
</project>
我错过了什么?
答案 0 :(得分:1)
确保ant库位于类路径中
看来,类路径中缺少ant-launcher-VERSION.jar
(其中Version是您正在使用的ant版本)。