排除来自蚂蚁classpath中的jar(Exclude jar from ant classpat

2019-07-29 01:12发布

我努力让自己在使用ant脚本一些遗留项目“干净行家”的设置。 我不知道很多关于蚂蚁,所以我的问题似乎幼稚。

我差不多完成了,但发货ant脚本失败,因为在类路径冗余。 如果我理解构建,这些行应该添加到类路径的每个LIB在“规定”适用范围:

<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,作为结果,也有我的类路径中三个不同版本的Ant:两个来自POM(1.5等1.7。 1)和一个从蚀(1.8.2)。 我试过(拼命!)addind一些行家排除,但悲惨地失败了。

所以我想:也许有从Ant classpath中不包括罐的一种方式。 我试图把:

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

在文件集的一部分,但它不工作。 有没有不包括冗余罐子的一种方式?

Answer 1:

试试这个方法: -

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


Answer 2:

尝试使用正斜杠,而不是反斜杠,即

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



文章来源: Exclude jar from ant classpath