我有一个 Ant 构建文件,其依赖项如下:
<target name="resolve">
....
</target>
<target name="compile" depends="resolve">
....
</target>
<target name="ship" depends="compile">
....
</target>
当仅使用 调用 ship 目标时ant ship
,仅需要的目标以正确的顺序执行:[resolve>compile>ship]
.
问题是在命令行上直接调用两个目标时。通过执行ant compile ship
,输出为[resolve > compile > resolve > compile > ship]
. 我无法理解选择两次执行某些依赖项的逻辑。
如何强制 Ant 从不执行目标两次?使用非常复杂的构建文件,我不能总是使用单个目标运行预期的命令。