小编典典

从Ant类路径中排除jar

java

我试图在一些使用ant脚本的旧项目上进行“干净的专家”设置。我对蚂蚁知之甚少,所以我的问题似乎很幼稚。

我快完成了,但是由于classpath中的冗余,所以传递ant脚本失败了。如果我了解构建,则这些行应将“提供”范围内的每个库添加到类路径中:

<artifact:dependencies pathid="dependency.classpath" scopes="provided">
    <pom file="./pom.xml"/>
</artifact:dependencies>

然后这个:

<path id="completecp">
    <fileset dir="${ant.home}/lib">
        <include name="*.jar" />
    </fileset>
    <path refid="dependency.classpath" />
</path>

将那些依赖项添加到ant.home目录中的库中。

麻烦的是,我使用的maven pom依赖于我无法修改的父pom,因此,我的类路径中有3个不同版本的Ant:两个来自POM(1.5和1.7。
1)和Eclipse(1.8.2)中的一个。我已经尝试过(拼命地!)addind一些行家排除法,但不幸失败了。

所以我想:也许有一种方法可以从Ant类路径中排除jar。我试着把:

<exclude name="*ant\1.7.1\ant-1.7.1.jar"/>
<exclude name="*ant\1.5\ant-1.5.jar"/>

在文件集部分,但是它不起作用。有没有办法排除那些多余的罐子?


阅读 409

收藏
2020-11-26

共1个答案

小编典典

尝试这种方式:-

<exclude name="**/ant/1.7.1/ant-1.7.1.jar"/>
<exclude name="**/ant/1.5/ant-1.5.jar"/>
2020-11-26