Ant dirset包含根目录

时间:2009-12-29 21:28:08

标签: ant build-process dirset

如何在Ant中定义dirset,其中包括两个目录:项目的基本目录和子目录“test”?

看起来您无法使用“/”,“。”或“”来具体包含dirset的根目录。例如,这包括“./test”,但不包括“。”:

<dirset dir="." id="myDirs">
    <include name="." />
    <include name="test" />
</dirset>

2 个答案:

答案 0 :(得分:2)

这显然没有意义。一旦root进入,test子目录就包含在其他所有内容中。也许你需要告诉我们这个dirset会消耗什么以及你期望它做什么?处理'测试'两次?

根据您的评论,您需要添加根,然后为根中的所有内容添加“排除”元素,但测试除外。

或制作两个dirsets:一个用根除了所有孩子,另一个用刚测试。

答案 1 :(得分:2)

documentation of DirSet并未解释此行为,但以下内容在我的Ubuntu 15.04上使用ant版本1.9.4正常工作

<path id="my.two.dirs">
    <dirset dir="." id="myDirs1" excludes="*/**" />
    <dirset dir="." id="myDirs2" includes="test" />
</path>

这几乎是bmargulies在他的回答中发布的内容,但是因为我一开始并不理解它,所以我认为代码示例可能有用。