为什么在构建后事件中输出'error: '会破坏我在VS2012中的构建?



添加

cmd.exe /c "ECHO error : unexplainable"

原因:

1>------ Build started: Project: xxx, Configuration: Debug Win32 ------
1>EXEC : error : unexplainable
1>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(134,5): error MSB3073: The command "cmd.exe /c "ECHO error : unexplainable"
1>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(134,5): error MSB3073: :VCEnd" exited with code -1.
========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========

只有当'error'字符串后面跟着':'字符时才会发生

这是MSBuild中的一个bug: https://github.com/Microsoft/msbuild/issues/766

'PostBuildEvent'目标使用的'Exec'任务默认情况下应该将' ignorestandarderorwarningformat '设置为true,但它没有,因此当在输出中发现'error:'时失败。

一个不可靠的方法来解决这个问题是修改'PostBuildEvent'的目标C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V110Microsoft.CppCommon.targets(在第134行)通过将IgnoreStandardErrorWarningFormat="true"添加到'Exec'任务

覆盖预定义的'PostBuildEvent'在你的项目像这里:我可以在一个。props属性表中包含一个。targets文件吗?

相关内容

  • 没有找到相关文章

最新更新