ant 1.65中的bug构建在ant 1.7+中运行

时间:2012-06-13 21:43:36

标签: ant junit jvm ivy

更新了问题

我已经(因为我意识到我的类路径中有两个版本的Ant,正如我的构建器所报告的那样),我发现我的核心问题只是我的类路径中存在较旧版本的Ant。

为了澄清,我的构建过程开始时会报告以下内容:

WARNING: multiple versions of ant detected in path for junit 

WARNING: multiple versions of ant detected in path for junit 
    [junit]          jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
    [junit]      and jar:file:/home/vagrant/Development/..../lib/ant-1.6.5.jar!/org/apache/tools/ant/Project.class

我的新(简化)问题是:

  • 在运行我的junit测试时,强制ant和junit使用正确的ant版本的最佳方法是什么,因为由于常春藤,我的类路径中的某些其他版本的ant可能是瞬态依赖?

原始问题

我注意到这个版本的ANT修复了一个junitvm但是:

http://svn.apache.org/repos/asf/ant/core/trunk/WHATSNEW

  • 此错误涉及ANT创建的junitvmwatcher文件未关闭的事实。
  • 但是,在我最近的ant构建中,jvmwatcher错误仍然存​​在。
  • 为什么在最新的ant安装中可能存在此错误?

1 个答案:

答案 0 :(得分:1)

正确版本的ANT应该是运行构建的版本。因此,我经常在 ivy.xml 文件中为ANT创建全局排除,如下所示:

    ..
    ..    
    <!-- Global exclusions -->
    <exclude org="org.apache.ant"/>
</dependencies>