重构Ant脚本 - 多个目录

时间:2010-01-15 23:56:00

标签: ant refactoring build

我有一组使用Ant运行的脚本构建的数据库。 我将每个数据库的脚本放在一个单独的目录中。

root (build.xml)
 - db1 (build.xml, *.sql)
 - db2 (build.xml, *.sql)
...

root build.xml有一个目标

<target name="all">
 <ant dir="db1"/>
 <ant dir="db2"/>
 ...
</target>

每个子文件夹中的build.xml与数据库名称基本相同。

有没有办法将此重构为一个单独的构建文件,该文件在每个文件夹中针对相应的数据库运行sql脚本?

2 个答案:

答案 0 :(得分:2)

查看subant任务。 examples in the docs显示如何使用它来迭代调用子目录中的Ant构建。

答案 1 :(得分:0)

非常依赖于构建文件中的内容。通常,&lt; for&gt;或者&lt; foreach&gt;可以帮助您迭代子文件夹并为每个子文件夹应用一段脚本。