相关疑难解决方法(0)

将所有警告视为错误

这应该是显而易见的,但我无法让它工作......

我想要做的很简单:如果有警告,我希望我的编译失败并出现错误.是的,着名的TreatWarningsAsErrors......

我在我的C#项目属性中配置它

将警告视为错误

这导致TreatWarningsAsErrors我的csproj 中的预期部分:

<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
Run Code Online (Sandbox Code Playgroud)

到目前为止private一切顺利,如果我在我的代码中添加一个无用的变量,它会导致编译错误:

private int unused;
Run Code Online (Sandbox Code Playgroud)

错误3警告错误:从不使用字段'XXXX.unused'

但整个问题是,我无法使其适用于装配参考问题.如果我有一个未知程序集的引用,编译器(devenv或msbuild)会发出警告,但我想要一个错误.

最终,我正在尝试配置一个gated check-in TFS构建配置,因此如果找不到 " 引用的组件'XXXX',TFS将拒绝提交. "警告.比修改构建过程模板更简单的东西会很棒.

.net c# msbuild tfs warnings

42
推荐指数
2
解决办法
2万
查看次数

如何在命令行中抑制来自msbuild的所有编译器和代码分析警告?

有人问过,但没有回答.答案(使用/warn:1)不适用于msbuild.exe,只适用于csc.exe.也许我错过了csc和msbuild之间的东西?

我想在我使用时禁止所有编译器警告和代码分析警告(例如"变量'variableNameHere'已分配,但其值..."代码分析警告:CA1805:Microsoft.Performance:...)命令行msbuild.我不想改变解决方案文件.我正在构建的非常大的解决方案中有几百个警告消息 - 修复它们远远超出了我的项目范围.

我试过/v:quiet但是没用.

有没有办法通过命令行执行此操作?

更新:这个:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe C:\Dev\ReallyBigSolution.sln /p:NoWarn=true /p:NoWarn=CA1031

绝对不行.我仍然收到数百个警告,包括我特别阻止的警告(CA1031).

使用/p:RunCodeAnalysis=Never/p:RunCodeAnalysis=false显然不会抑制代码分析警告或错误.

msbuild

11
推荐指数
2
解决办法
1万
查看次数

从msbuild中的命令行导入.targets文件

我目前正在使用msbuild构建多个项目.我对由.targets文件处理的构建进行了一个小的自定义.一种解决方案是添加代码段

<Import Project="MyTargets.targets"/>
Run Code Online (Sandbox Code Playgroud)

到每个项目文件.但是,理想情况下我不想触摸项目文件,并能够将此信息作为参数传递给msbuild.这样我就可以轻松控制是否从命令行运行此自定义,而且我不必触摸现有的项目文件.

这可能吗?

msbuild command-line target

9
推荐指数
1
解决办法
4985
查看次数

标签 统计

msbuild ×3

.net ×1

c# ×1

command-line ×1

target ×1

tfs ×1

warnings ×1