jar 任务并希望排除某个目录。目录的结构类似于:
jar
food |_ fruits |_ apples |_ bananas
我有一个蚂蚁任务:
<jar destfile="Dest.jar"> ... <fileset dir="food"> <exclude name="**/bananas/" /> <exclude name="**/*Test*" /> <include name="**/*.class" /> </fileset> ...
我尝试了几种通配符的组合来排除bananas目录,但没有效果。我也尝试过对include和excludes重新排序,不过我不知道这是否有什么不同。我还尝试了其他一些建议[1][2],但都没有奏效。我目前的猜测是,在bananas目录中,有匹配“*.class”的文件,所以我认为它们的包含可以防止bananas被排除在外。
注:我匹配的香蕉目录的真实名称准确,所以大小写敏感不应该是一个问题。如果它能使任务更简单,我可以引用目录的完整路径,尽管我更希望在ant任务中对重构更友好一些。
[1] http://www.velocityreviews.com/forums/t146608-in-ant-how-do-you-exclude-a-directory-from-copy-or-zip.html http://www.java2s.com/Tutorial/Java/0520__Ant/filesetwithexclude.htm
我已经发现了问题的原因,这与ant任务的编写方式无关。
我不知道我是否应该觉得愚蠢的假设文件将被替换,或者如果我觉得委屈没有日志消息,欢迎评论。总之,问题解决了。