我有像这样的Ant目标
<target name="test-fail"
depends="run-fail, after-fail"
/>
在run-fail
中,任务<fail/>
已执行。
after-fail
仍在运行(是预期的行为吗?)。最后,脚本确实失败了,但是有没有办法运行after-fail
?
答案 0 :(得分:2)
这不是Ant中的预期行为:fail
任务调用将退出当前构建,并且后续目标将不会被执行。
但是,有一种情况可能会发生您的方案:使用ant
或-keep-going
标记运行-k
时(请参阅this page)。
e.g。 ant -k -f buildfile.xml
。
在这种情况下,Ant仍将执行不依赖于失败目标的目标。如果要避免这种情况,请确保以这种方式启动构建文件。
如果未启用此标志,那么我能看到的唯一解释是其他目标在到达after-fail
之前明确调用test-fail
。
在所有情况下,运行带有详细输出的构建文件(使用-v
标志)可以帮助您了解Ant如何执行整个序列。