Ant:使用任务处理子文件夹中的文件
我有一个文件夹结构如下Ant:使用任务处理子文件夹中的文件,ant,Ant,我有一个文件夹结构如下 + [BASE] +++ [DIR 1] ++++++ File.zip +++ [DIR 2] ++++++ File.zip .... 我在BASE中有一个build.xml。我需要一个任务,在那里我可以解压每个目录*中的文件.zip。我需要它是这样的,一个新的目录添加也应该得到处理 为了获得目录名,我尝试了以下方法,但不知道如何进一步操作 <dirset id="contents" dir="." /> <property name="prop.
+ [BASE]
+++ [DIR 1]
++++++ File.zip
+++ [DIR 2]
++++++ File.zip
....
我在BASE中有一个build.xml。我需要一个任务,在那里我可以解压每个目录*
中的文件.zip
。我需要它是这样的,一个新的目录添加也应该得到处理
为了获得目录名,我尝试了以下方法,但不知道如何进一步操作
<dirset id="contents" dir="." />
<property name="prop.contents" refid="contents"/>
您可以尝试嵌入groovy脚本。大概是这样的:
<target name="unzip">
<taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy" classpathref="build.path"/>
<fileset id="zips" dir="." includes="**/*.zip"/>
<groovy>
project.references.zips.each { fileResource ->
def file = new File(fileResource.toString())
ant.unzip(src:file, dest:file.parent)
}
</groovy>
</target>
project.references.zips.each{fileResource->
def file=新文件(fileResource.toString())
unzip(src:file,dest:file.parent)
}
代码中存在一个问题,属性[“target.dir”]始终保留ZIP中的第一个值。target.dir的值应更改为奇数。。。我已经修改了解决方案。