在编译错误时立即停止MSBuild处理

Ana*_*nya 9 msbuild batch-file command-prompt

我编写了一个批处理文件,在执行时会构建一个visual studio解决方案.该解决方案包含少数C#项目.我正在使用MSBuild实用程序.当任何项目中存在编译错误时,如何阻止构建进一步继续?我如何获取错误消息并在命令提示符下显示它们?

Joã*_*elo 5

在构建可视化工作室解决方案时,不支持首次出现故障.

您可以通过执行以下步骤来解决此问题:

  1. 将环境变量msbuildemitsolution设置为1(set msbuildemitsolution=1);
  2. 调用MSBuild以从目标VS解决方案生成*.proj文件;
  3. 在生成的*.sln.proj文件RunEachTargetSeparately="true"中,将名为Build的目标更改为RunEachTargetSeparately="false";
  4. 调用MSBuild以构建更新的*.sln.proj文件.

这个答案基于Dan Moseley对MSDN论坛帖子的回答.