大型旧项目可能存在大量的 Warning,在编译之后 Visual Studio 会给出大量的警告。Visual Studio 中可以直接点掉警告,然而如果是通过命令行 msbuild 编译的,那如何不要让警告输出呢?
在使用 msbuild 命令编译项目的时候,如果存在大量的警告,输出量会非常多。如果我们使用 msbuild 命令编译来定位项目的编译错误,那么这些警告将会导致我们准确查找错误的效率明显降低。
当然,这种问题的首选解决方案是 —— 真的修复掉这些警告!!!
那么可以用什么方式临时关闭 msbuild 命令编译时的警告呢?可以输入如下命令:
msbuild /p:WarningLevel=0
这样在调试编译问题的时候,因警告而造成的大量输出信息就会少很多。
不过需要注意的是,这种方式不会关闭所有的警告,实际上这关闭的是 csc 命令的警告(CS
开头)。关于 csc 命令的警告可以参见:-warn (C# Compiler Options) - Microsoft Docs。于是,如果项目中存在 msbuild 的警告(MSB
开头),此方法依然还会输出,只不过如果是为了调试编译问