如何在没有触发回溯的情况下失败Phing

问题描述:

在我的主要phing任务运行之前,它首先检查是否已设置所有必需的属性。如果某个属性丢失或无效,它会调用FailTask​​来结束执行 - 这是可行的。如何在没有触发回溯的情况下失败Phing

<if> 
    <equals arg1="${build.db.host}" arg2="" /> 
    <then> 
    <fail msg="build.db.host is empty." /> 
    </then> 
</if> 

唉,FailTask​​抛出一个BuildException(与MSG),它抛出一个“在IfTask错误” - 两者都显示两次,用自己回溯,给我一个60行屏幕转储一行消息!

有没有办法抑制回溯,或捕捉(并抛弃)异常?理想情况下,我会看到类似于:

BUILD FAILED 
/path/to/build.xml:728:6: build.db.host is empty 
Total time: 0.3351 seconds 

我从Ubuntu 14.04的命令行运行最新版本的Phing。

回溯已作为http://www.phing.info/trac/ticket/1087(将在2.9.0版中发布)的一部分进行清理。谢谢你的问题!