内容简介:大型旧项目可能存在大量的 Warning,在编译之后 Visual Studio 会给出大量的警告。Visual Studio 中可以直接点掉警告,然而如果是通过命令行 msbuild 编译的,那如何不要让警告输出呢?在使用 msbuild 命令编译项目的时候,如果存在大量的警告,输出量会非常多。如果我们使用 msbuild 命令编译来定位项目的编译错误,那么这些警告将会导致我们准确查找错误的效率明显降低。当然,
大型旧项目可能存在大量的 Warning,在编译之后 Visual Studio 会给出大量的警告。Visual Studio 中可以直接点掉警告,然而如果是通过命令行 msbuild 编译的,那如何不要让警告输出呢?
在使用 msbuild 命令编译项目的时候,如果存在大量的警告,输出量会非常多。如果我们使用 msbuild 命令编译来定位项目的编译错误,那么这些警告将会导致我们准确查找错误的效率明显降低。
当然, 这种问题的首选解决方案是 —— 真的修复掉这些警告 !!!
那么可以用什么方式临时关闭 msbuild 命令编译时的警告呢?可以输入如下命令:
msbuild /p:WarningLevel=0
这样在调试编译问题的时候,因警告而造成的大量输出信息就会少很多。
不过需要注意的是,这种方式不会关闭所有的警告,实际上这关闭的是 csc 命令的警告( CS
开头)。关于 csc 命令的警告可以参见: -warn (C# Compiler Options) - Microsoft Docs
。于是,如果项目中存在 msbuild 的警告( MSB
开头),此方法依然还会输出,只不过如果是为了调试编译问题,那么依然会方便很多,因为 MSB
开头的警告会少非常多。
关于警告等级:
-
0
关闭所有的警告。 -
1
仅显示严重警告。 -
2
显示 1 级的警告以及某些不太严重的警告,例如有关隐藏类成员的警告。 -
3
显示级别 2 警告以及某些不太严重的警告,例如关于始终评估为true
或false
的表达式的警告。 -
4
默认值 显示所有 3 级警告和普通信息警告。
参考资料
- command line - How to suppress specific MSBuild warning - Stack Overflow
- command line - How to suppress all warnings using MSBuild - Stack Overflow
- visual studio 2013 - How to have MSBuild quiet output but with error/warning summary - Stack Overflow
- -warn (C# Compiler Options) - Microsoft Docs
- Suppress MSB4126
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- LLVM/Clang 6.0.0 发布:改进的优化和新的编译器警告
- 光之翼 Java 通用代码生成器 1.0.0 Beta 2 版已公布,修复编译错和编译警告,所有示例通过测试
- 解决Android Studio 3.2.1中NDK编译代码时候出现警告": warning: conflicts with previous declar...
- c – 我可以在不禁用“将警告视为错误”的情况下排除某些特定警告吗?
- PHP警告:除以零
- iOS工程的警告修复
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。