是否可以拥有一个包含多个源目录的文件集



我有一些蚂蚁逻辑,看起来像这样:

<copy todir="src_@{version}" flatten="true">
    <fileset dir="${generic-libs.source}prolo">
        <include name="**/*.c"/> <!-- all .c files including subfolders -->
        <include name="**/*.h"/> <!-- all .h files including subfolders -->
        <exclude name="**/test/*.*" /> <!-- exclude test (sub)folders -->
        <exclude name="**/test*.*" /> <!-- exclude remaining test sources -->
    </fileset>
    <fileset dir="${generic-libs.source}genlo">
        <include name="**/*.c"/>
        <include name="**/*.h"/>
        <exclude name="**/test/*.*" />
        <exclude name="**/test*.*" />
    </fileset>
    <fileset dir="${generic-libs.source}ptclo">
        <include name="**/*.c"/>
        <include name="**/*.h"/>
        <exclude name="**/test/*.*" />
        <exclude name="**/test*.*" />
    </fileset>
    ...
</copy>

。。。具有另外10个相同的构造。

fileset标记的内容总是相同的,所以我想必须有一种方法来缩短它?

Ant 1.9.4为此引入了多根文件集:

新的资源集合类型就像<fileset><dirset>的并集,它们共享相同的配置,但具有不同的基本目录。

在您的情况下,类似于:

<multirootfileset basedirs="${generic-libs.source}prolo,${generic-libs.source}genlo,${generic-libs.source}ptclo">
 <include name="**/*.c"/>
 <include name="**/*.h"/>
 <exclude name="**/test/*.*"/>
 <exclude name="**/test*.*"/>
</multirootfileset>

相关内容

  • 没有找到相关文章

最新更新