Ant拷贝与不同的基础

时间:2009-02-06 15:05:00

标签: ant

给定目录结构:

root
    build.xml
    folderA
        file1
        file2
    folderB
        file3

我正在尝试将folderA中的文件复制到folderB中,当我尝试时,它最终将folderA放在folderB中,所以我最终得到:

folderB
    folderA
        file1
        file2
    file3

我只是希望使用相同的结构复制文件,所以我最终得到:

folderB
    file1
    file2
    file3

我的Ant任务看起来像这样:

<copy todir="folderB">
    <fileset dir="folderA">
        <include name="file*" />
    </fileset>
</copy>

任何提示?

编辑:我无法使用flatten,因为在folderA下面有一个需要保留的目录结构。

2 个答案:

答案 0 :(得分:2)

<copy todir="folderB">
    <fileset dir="folderA/">
        <include name="file*" />
    </fileset>
</copy>

这很有效。请注意 dir =“folderA /”中的尾部斜杠。

答案 1 :(得分:0)

如果您想在复制后维护文件夹结构,那么您实际上是非常接近需要先创建目录。

<target name="copy">
    <mkdir dir="folderB/folderA"/>
    <copy todir="folderB/folderA">
        <fileset dir="folderA"/>
    </copy>
</target>