我正在尝试定义一个在目标完成执行时发出(使用回显)消息的任务,无论该目标是否成功。具体来说,目标执行一个任务来运行一些单元测试,我想发出一条消息,指示结果在哪里可用:
<target name="mytarget">
<testng outputDir="${results}" ...>
...
</testng>
<echo>Tests complete. Results available in ${results}</echo>
</target>
不幸的是,如果测试失败,任务就会失败并且执行会中止。因此,只有在测试通过时才会输出消息——这与我想要的相反。我知道我可以把任务放在任务之前,但这会让用户更容易错过这条消息。我正在尝试做的事情可能吗?
更新:事实证明我很愚蠢。我的 <testng> 任务中有 haltOnFailure="true" ,这解释了我看到的行为。现在的问题是,即使测试失败,将其设置为 false 也会导致整个 ant 构建成功,这不是我想要的。下面使用任务的答案看起来可能是我想要的..