【问题标题】:"JUnitTask was not found" error (Hudson, Ant, JUnit)“未找到 JUnitTask”错误(Hudson、Ant、JUnit)
【发布时间】:2012-07-31 22:04:00
【问题描述】:

我尝试了几种方法将 ant 和 junit 安装在与 hudson 相同的服务器上。我最终下载了 Ant 源代码,使用包含的 fetch.xml 文件安装了可选依赖项,构建了源代码,并将 junit-4.8.1.jar 放到 lib 目录中,其中已编译的 Ant 代码 [我刚刚构建的] 是.然后我使用“export ANT_HOME=/usr/share/ant”命令将ANT_HOME 设置为ant 根目录。我还设置了一个具有相同值 (/usr/share/ant) 的 Hudson 配置变量“ANT_HOME”,并且还使用 export ANT_HOME 命令将一个新文件放入了 /etc/profile.d 目录。在这一点上,我不确定还能尝试什么,但 Hudson 仍然给我错误:

构建失败/var/lib/hudson/jobs/MyProject/build.xml:31:问题: 无法创建任务或键入junit 原因:该类 org.apache.tools.ant.taskdefs.optional.junit.JUnitTask 未找到。 这看起来像是 Ant 的可选组件之一。行动:检查适当的可选 JAR 存在于 -/usr/share/ant/lib -/var/lib/hudson/.ant/lib -a 使用 -lib 参数在命令行中添加的目录

不要惊慌,这是一个常见的问题。最常见的原因是 缺少 JAR。

这不是错误;是配置问题

事实上,我确实检查了 /usr/share/ant/lib 并且类“org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.class”位于 ant-junit jar 文件中我通过运行命令确认:jar tfv ant-junit.jar | grep org.apache.tools.ant.taskdefs.optional.junit.JUnitTask

谁能告诉我要尝试什么,我不知道从哪里开始。

【问题讨论】:

    标签: ant junit hudson


    【解决方案1】:

    如果你在 Ubuntu 上,你可以简单地 apt-get ant;我这样做并链接到我的项目中的 junit jar。

    干杯,

    尼尔

    【讨论】:

    • “链接到我的项目中的 junit jar”是什么意思?你在谈论你的哈德逊项目吗?如果是这样,你改变了什么设置?否则,您的意思是在您的 ant build.xml 脚本中吗? (再次,如果是,请说明你做了什么)。我尝试了各种东西,包括类路径条目等
    • 顺便说一句,我不在 ubuntu 上。我在centOS上。当您说“链接到 junit jar”时,您的意思是 ant-junit.jar,对吗?由于 junit.jar 不包含我提到的类。无论如何,谢谢。
    【解决方案2】:

    事实证明,hudson 自己在自己的库之一中安装了某个版本的 Ant。我想这以某种方式引起了冲突,因为当我摆脱它时,事情就奏效了。我认为它在 /var/hudson 或 /var/hudson/lib 中。该路径在 hudson 安装期间被添加到 PATH 环境变量中。因此,您的选择是将您自己的 Ant 安装添加到路径的开头,删除 hudson 的 Ant 版本,或者删除 PATH 的那部分。

    【讨论】:

      猜你喜欢
      • 2012-04-04
      • 2016-09-21
      • 2013-04-05
      • 2011-05-16
      • 1970-01-01
      • 2013-10-24
      • 2017-04-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多