我有以下目录结构:
RootFolder
|build.xml
|Project 1
|src
|resources
|Project 2
|src
|resources
|Project 3
|src
|resources
我想将每个项目下的所有仅src文件夹(包括子目录)复制到单个目录
这就是我尝试过的
<target name="prep_emma" >
<copy todir="${dest.dir}/src" verbose="true" >
<fileset dir="${RootFolder}">
<include name="**/JavaSource/com/**/*.java"/>
</fileset>
</copy>
</target>
但这会在目的地
创建整个文件夹结构dest.dir
|Project 1
|src
|Project 2
|src
|Project 3
|src
但我想要
dest.dir
|src
答案 0 :(得分:2)
你需要file mapper,cutdirsmapper应该足够了,f.e。 :
<copy todir="${dest.dir}/src" verbose="true" >
<fileset dir="${RootFolder}">
<include name="**/JavaSource/com/**/*.java"/>
</fileset>
<cutdirsmapper dirs="1"/>
</copy>
表示剥离了前导项目x。
cutdirsmapper(自Ant 1.8.2起)
此映射器从中删除配置数量的前导目录 源文件名。