我不希望ant的 jar 任务在每次跳过文件时通知我,因为该文件已经添加。我得到了大量的信息:
[jar] xml/dir1/dir2.dtd already added, skipping
有没有办法关闭此警告?
答案 0 :(得分:2)
这是一个较旧的问题,但有一种明显的方法可以排除重复警告,不包括重复文件。您可以通过以下两种方式之一完成此操作:
所以,而不是做:
<jar destfile="${dist}/lib/app.jar">
<fileset dir="a" include="xml/data/*.{xml,dtd}"/>
<fileset dir="b" include="xml/data/*.{xml,dtd}"/>
<fileset dir="c" include="xml/data/*.{xml,dtd}"/>
</jar>
做其中一个:
<jar destfile="${dist}/lib/app.jar">
<fileset dir="a" include="xml/data/*.{xml,dtd}"/>
<fileset dir="b" include="xml/data/*.xml"/>
<fileset dir="c" include="xml/data/*.xml"/>
</jar>
或
<copy todir="tmpdir">
<fileset dir="a" include="xml/data/*.{xml,dtd}"/>
<fileset dir="b" include="xml/data/*.{xml,dtd}"/>
<fileset dir="c" include="xml/data/*.{xml,dtd}"/>
</copy>
<jar destfile="${dist}/lib/app.jar">
<fileset dir="tmpdir" include="xml/data/*.{xml,dtd}"/>
</jar>
<delete dir="tmpdir"/>
编辑:根据对此答案的评论,有第三个选项,虽然这是一个相当多的工作......你总是可以获得jar任务的源,并修改这样它就不会打印出警告。你可以将它保存为树的本地修改,将其移动到另一个包并自己维护,或者尝试将补丁推回到上游。
答案 1 :(得分:1)