【问题标题】:BuildException when executing Ant task执行 Ant 任务时的 BuildException
【发布时间】:2011-04-23 21:31:30
【问题描述】:

我已经安装了 Apache Ant 并正确设置了 Path、CLASS_PATH 和 ANT_PATH 变量。当我在 build.xml 文件所在的项目文件夹中的命令行中运行 jar 任务时,出现以下错误:

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.

【问题讨论】:

  • Componentdef.class 和 Jar.class 在 ant.jar 本身中找到。您的 ant.jar 是否已损坏 - 大小是否为 1.4 Mb 左右?
  • 我假设你说的是PATH(不是Path)、CLASSPATH(不是CLASS_PATH)和ANT_HOME(不是ANT_PATH环境变量?
  • 我不记得了,那是差不多 7 年前的事了..

标签: apache ant


【解决方案1】:

我遇到了这个错误,发现它是由于类路径中有旧版本的 ant.jar 造成的。

【讨论】:

    【解决方案2】:

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

    检查ANT_HOME 设置的内容。

    运行ant -version,看看它是否显示1.8.1

    【讨论】:

      【解决方案3】:

      在~/.bashrc 中添加如下配置

      导出 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

      别忘了源码~/.bashrc

      希望对你有用!

      【讨论】:

        【解决方案4】:

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

        我的情况是: 我正在使用 1.9.7 ant,但 ant -version 给了我 1.7.1 我安装了weblogic,它有1.7.1 ant,重命名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
        

        【讨论】:

          猜你喜欢
          • 2014-02-14
          • 2011-02-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-20
          • 2013-01-11
          • 1970-01-01
          • 2016-09-16
          相关资源
          最近更新 更多