我有以下代码:
new AntBuilder().zip( destFile: "${file}.zip" ) {
fileset( dir: srcDir ) {
include( name:pattern )
}
}
在这个示例中,我希望 ant创建一个与原始文件同名的zip,但最后添加.zip。有没有办法在不知道的情况下执行此操作原始文件的名字提前蚂蚁?我希望能够和其他蚂蚁任务做同样的事情。
换句话说,我希望文件名成为每个文件解析的“模式”。
答案 0 :(得分:1)
这样的东西?
<target name="zip-files">
<taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy" classpathref="build.path"/>
<dirset id="dirsToZip" dir="src">
<include name="dir*"/>
</dirset>
<groovy>
project.references.dirsToZip.each {
ant.zip(destfile: "${it}.zip", basedir: it)
}
</groovy>
</target>
如果找到groovy任务通过文件集迭代或dirset非常有用的功能。