使用 MSBuild,一旦发生错误,项目的执行就会停止,除非 ContinueOnError=true
。
有没有办法在不引发错误的情况下停止项目的执行?
我想有这种可能性,因为我有一组现有的 msbuild 项目文件,在某些情况下,我需要停止处理项目而不引发错误,因为它是流程的正常退出点,而我没有希望使用脚本的人认为有问题。
我知道我可以设置一些属性并将所有剩余的任务置于此条件下,但我想避免这种情况。
最佳答案
正如您所解释的,您希望在特殊情况下停止构建而不引发错误,因为这是一个正常的退出点。为什么不创建一个什么都不做的目标,作为您的退出点。在您的特殊情况下,您将调用此目标。
<target Name="BuildProcess">
<Message Text="Build starts"/>
...
<CallTarget Targets="Exit"
Condition="Special Condition"/>
<CallTarget Targets="Continue"
Condition="!(Special Condition)"/>
...
</target>
<target Name="Continue">
<Message Text="Build continue"/>
</target>
<target Name="Exit">
<!-- This target could be removed -->
<!-- Only used for logging here -->
<Message Text="Build ended because special condition occured"/>
</target>
关于msbuild - 如何在不引发错误的情况下停止 MSBuild 执行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2284389/