MSB3277的错误警告:发现无法解析的相同从属程序集的不同版本之间存在冲突

Jay*_*uzi 7 msbuild

在我修复了这个警告之后,我怎么能把它变成一个错误,所以它不会再次滑入?

msbuild /p:TreatWarningsAsErrors 不起作用

Han*_*ant 12

没有快乐的答案给你这里.TreatWarningsAsErrors属性仅影响C#和VB.NET编译器(而不是C++),它确定其/warnaserror命令行选项的值.

但MSB3277是由MSBuild任务ResolveAssemblyReference生成的,其内部LogResult()方法生成诊断.该类唯一的属性有助于将警告有条件地视为WarnOrErrorOnTargetArchitectureMismatch,而不是您要实现的目标.您可以使用反编译器查看自己,查看C:\ Program Files(x86)\ MSBuild\12.0\Bin\Microsoft.Build.Tasks.v12.0.dll.本地化MSB3277消息的资源名称是"ResolveAssemblyReference.FoundConflicts".

因此,只有这样才能在这里找到一个小实用程序来解析日志文件并查找警告.