Ant:如何在所有子文件夹中进行交互并在ant中执行任务

Sol*_*mon 7 ant loops

目前我这样做

<foreach list="${myfolders}" target="bundle"
     param="worksheet" inheritall="true"/>
Run Code Online (Sandbox Code Playgroud)

在文件夹列表上执行目标"bundle".但问题是我需要设置此列表.如何使用Ant来遍历给定父目录的所有文件夹?

如果有办法做到这一点,也排除了更好的特定文件夹.谢谢.

Dav*_* W. 10

您可以提供<dirset>以下<foreach>操作的任务:

 <foreach target="bundle" param="worksheet" inheritall="true">
      <path>
          <dirset dir="${subDir}">
               <include name="*"/>
          </dirset>
      </path>
 </foreach>
Run Code Online (Sandbox Code Playgroud)

请注意,list当我这样做时,不使用该参数.

你不能<dirset>直接在<foreach>你的下面使用<fileset>.但是,你可以把<dirset><path>(如上所示).在<include name="*"/>防止递归下降目录树.


Ben*_*Ben -1

我使用ant-contrib的foreach任务来完成类似的工作。这将为列表中的每个条目调用指定的目标,每次将条目作为参数传递。