2

我使用 Ant 构建 Delphi 应用程序(从 CruiseControl 调用)。

我希望 ant 递归搜索目录树以查找文件 *.dpr,并在找到时调用第二个 build.xml,或者最好是宏或目标,将找到的每个文件名作为“参数”传递。我发现我可以使用 subant 查找 build.xml 文件并按顺序运行它们,但这不是我想要的,因为我想避免为每个应用程序创建一个 build.xml。

我要避免的是必须在我的 build.xml 中逐项列出我的应用程序,而是让 ant 找到它们。

请不要告诉我使用不同的构建工具,因为我们已经在使用 Ant 方面进行了大量投资。

4

1 回答 1

3

如果你使用ant-contrib,你可以使用 for 循环:

<for param="file">
  <fileset dir="${process.dir}" includes="**/*.dpr" />
  <sequential>
    <ant antfile="subbuild.xml">
      <property name="in" value="@{file}"/>                            
    </ant>
  </sequential>
</for>      

您还可以使用此方法调用宏或目标。

于 2008-11-03T23:59:28.260 回答