我有一个非常的脚本,我看到即使我的执行失败,NANT的退出代码仍为0。如何更改NANT退出代码?
答案 0 :(得分:1)
exec task有一个名为“resultproperty”的属性,可以获取退出代码。
答案 1 :(得分:1)
如果构建成功,NANT将以代码0退出,如果构建使代码1的NANT失败,您可以使用<fail>
强制执行此操作。 NANT没有提供其他方法来控制退出代码,但是你可能会破解它:
<script language="C#">
<code>
<![CDATA[
public static void ScriptMain(Project project)
{
System.Environment.Exit(3);
}
]]>
</code>
</script>
这将立即结束,所以也许您可能希望通过将目标放在 nant.onsuccess 中来创建目标。
<exec>
失败时,为什么NANT退出代码为0? <exec>
失败。通常这导致整个构建失败,NANT退出代码1,有两个例外(见2和3)。这给了我们三种可能的解释:
resultproperty
属性并检查属性。failonerror="False"
属性已设置在<exec>
或更高级别(<nant>
或<call>
)上。检查NANT输出以查看正在调用目标的顺序或搜索failonerror=
。<exec>
作为通过 nant.onsuccess resp启动的目标的一部分执行。 nant.onfailure 属性钩子。通过搜索nant.on
来检查是否以及在哪里。要说更多样本NANT脚本或日志文件会有用。