ant中的循环目录结构
我们希望在ant中循环遍历目录结构,而不使用foreach。 有什么优雅的方法可以做到这一点吗?可以迭代一组目录或文件ant中的循环目录结构,ant,configuration,ant-contrib,Ant,Configuration,Ant Contrib,我们希望在ant中循环遍历目录结构,而不使用foreach。 有什么优雅的方法可以做到这一点吗?可以迭代一组目录或文件 <target name="run-apply"> <apply executable="echo"> <dirset dir="src"/> </apply> </target> project.references.dirs.each{ 蚂蚁,回应一下 } 任务jar的安装
<target name="run-apply">
<apply executable="echo">
<dirset dir="src"/>
</apply>
</target>
project.references.dirs.each{
蚂蚁,回应一下
}
任务jar的安装很容易实现自动化:
<target name="install-groovy">
<mkdir dir="${user.home}/.ant/lib"/>
<get dest="${user.home}/.ant/lib/groovy-all.jar" src="http://search.maven.org/remotecontent?filepath=org/codehaus/groovy/groovy-all/2.1.1/groovy-all-2.1.1.jar"/>
</target>
最后,如果要遍历其他生成文件,该任务非常有用:
<target name="run-subant">
<subant>
<fileset dir="src" includes="**/build.xml"/>
</subant>
</target>
可以迭代一组目录或文件
<target name="run-apply">
<apply executable="echo">
<dirset dir="src"/>
</apply>
</target>
project.references.dirs.each{
蚂蚁,回应一下
}
任务jar的安装很容易实现自动化:
<target name="install-groovy">
<mkdir dir="${user.home}/.ant/lib"/>
<get dest="${user.home}/.ant/lib/groovy-all.jar" src="http://search.maven.org/remotecontent?filepath=org/codehaus/groovy/groovy-all/2.1.1/groovy-all-2.1.1.jar"/>
</target>
最后,如果要遍历其他生成文件,该任务非常有用:
<target name="run-subant">
<subant>
<fileset dir="src" includes="**/build.xml"/>
</subant>
</target>
简短回答:不太可能。有很多方法可以解决这个问题,但是为了清晰和简单,我更喜欢ant contrib
任务。使用
任务,您现在可以本地化变量的值。以前,您有时必须使用ant contrib的
任务来重置值,这样您就可以一遍又一遍地循环这些值
<for param="directory">
<fileset dir="${some.dir}"/>
<sequential>
<local name="foo"/>
<local name="bar"/> <!-- Properties that may change with each iteration -->
<!-- Here be dragons -->
</sequential>
</for>
现在,当有人签出我的项目时,他们已经安装了ant-contrib(因为它在我的项目中)并且可以访问(因为我将我的
任务指向我项目中ant-contrib.jar的位置)。有很多方法可以解决这个问题,但是为了清晰和简单,我更喜欢ant contrib
任务。使用
任务,您现在可以本地化变量的值。以前,您有时必须使用ant contrib的
任务来重置值,这样您就可以一遍又一遍地循环这些值
<for param="directory">
<fileset dir="${some.dir}"/>
<sequential>
<local name="foo"/>
<local name="bar"/> <!-- Properties that may change with each iteration -->
<!-- Here be dragons -->
</sequential>
</for>
现在,当有人签出我的项目时,他们已经安装了ant-contrib(因为它在我的项目中)并且可以访问(因为我将我的
任务指向我的项目中ant-contrib.jar的位置)。您打算如何处理目录结构?如果您正在做一些事情,比如在每个目录中构建一个ant项目,那么您可能能够通过目录结构获得所需的功能?如果您正在每个目录中构建一个ant项目,那么您可能能够获得所需的功能,apply对我来说不起作用,因为我不想为每个目录启动一个新流程element@ConstantinoCronemberger好的groovy任务是更有效的循环机制。事实上,我使用的是maven antrun插件,在这里,我将查看groovy-maven-plugin.apply对我不起作用,因为我不想为每个应用程序启动新的进程element@ConstantinoCronemberger好的groovy任务是更有效的循环机制。事实上,我使用的是maven antrun插件,在这篇文章中,我将看看groovy maven插件。需要包装在元素中需要包装在元素中