2010-10-11 150 views
4

我已经安装了Apache Ant并正确设置了Path,CLASS_PATH和ANT_PATH变量。当我在那里的build.xml文件是我的项目文件夹中运行一个命令行罐子任务,我得到以下错误:执行Ant任务时出现问题

BUILD FAILED 

C:\Documents and Settings\TonyS\My Documents\My Workspace\code\build.xml: 32: 

The following error occurred while executing this line: 
jar:file:/C:/Documents%20and%20Settings/TonyS/My%20Documents/Ant/apache-ant-1.8.1/lib/ant.jar!org/apache/tools/ant/antlib.xml:37: Could not create task or type: componentdef. 

Ant could not find the task or a class this task relies upon. 

.... 

可以请别人给我的帮助,因为这是推动我疯了...

谢谢!

+0

Componentdef.class和Jar.class在ant.jar本身中。你的ant.jar是否损坏 - 大小是1.4Mb左右? – JoseK 2010-10-12 08:14:56

+0

我假设你谈论的是PATH(不是'Path'),'CLASSPATH'(而不是'CLASS_PATH')和'ANT_HOME'(而不是'ANT_PATH')*环境变量*? – zb226 2017-04-11 11:52:53

+0

我不记得了,那已经快7年了。 – Anto 2017-04-11 12:43:40

回答

4

一种可能性是您可能在您的系统上安装了另一个版本的ant,您的PATH指向它。

检查什么是ANT_HOME设置为。

运行ant -version,看看它显示了1.8.1

4

我有这个错误,并发现它是由在类路径中的ant.jar的旧版本引起的。

1

添加以下配置在〜/ .bashrc

出口CLASSPATH =:$ JAVA_HOME/lib中/ dt.jar:$ JAVA_HOME/lib中/的tools.jar

不要忘记源〜/ .bashrc

希望对你有用!

1

你在你的环境中有重复的蚂蚁。

我的情况是: 我使用1.9.7蚂蚁,​​蚂蚁却-version给我1.7.1 我安装WebLogic和它有1.7.1蚂蚁,后改名MW_HOME,这个问题就消失了。

我在使用1.7.1测试junit时发现了这个问题。它显示一个警告。

junit: 
    [junit] WARNING: multiple versions of ant detected in path for junit 
    [junit]   jar:file:/D:/wls12120/oracle_common/modules/org.apache.ant_1.7.1/lib/ant.jar!/org/apache/tools/ant/ 
Project.class 
    [junit]  and jar:file:/D:/apache-ant-1.7.1/lib/ant.jar!/org/apache/tools/ant/Project.class 
    [junit] Running HelloWorldTest