dem*_*key 16 c# stylecop compiler-warnings visual-studio visual-studio-2013
我想将Stylecop警告视为错误,但它对我不起作用.
我的项目被配置为将警告视为错误,如果我使用真正的"编译器警告"构建它确实显示编译器错误.但是通过"Stylecop警告",它只显示编译器警告.
因此,当有Stylecop警告时,我向TeamCity烦恼地签到并不会破坏CI构建.
我正在使用VS2013和Stylecop 4.7.49.
项目 - >属性 - >构建
项目 - >样式设置 - >选项
using System;
namespace CodeUsageTest
{
public class CodeUsage
{
private string fff()
{
int nobodyLovesMe; //CS0168
return "";
}
}
}
Run Code Online (Sandbox Code Playgroud)
构建输出:
1>------ Build started: Project: CodeUsageTest, Configuration: Debug Any CPU ------
1>D:\Sandbox\CodeUsageTest\CodeUsage.cs(9,17,9,30): error CS0168: Warning as Error: The variable 'nobodyLovesMe' is declared but never used
========== Build: 0 succeeded, 1 failed, 3 up-to-date, 0 skipped ==========
Run Code Online (Sandbox Code Playgroud)
using System;
namespace CodeUsageTest
{
public class CodeUsage
{
private string fff() //SA1300
{
return ""; //SA1122
}
}
}
Run Code Online (Sandbox Code Playgroud)
构建输出:
1>------ Build started: Project: CodeUsageTest, Configuration: Debug Any CPU ------
1>D:\Sandbox\CodeUsageTest\CodeUsage.cs(7,1): warning : SA1300 : CSharp.Naming : method names begin with an upper-case letter: fff.
1>D:\Sandbox\CodeUsageTest\CodeUsage.cs(9,1): warning : SA1122 : CSharp.Readability : Use string.Empty rather than "".
========== Build: 1 succeeded, 0 failed, 3 up-to-date, 0 skipped ==========
Run Code Online (Sandbox Code Playgroud)
ken*_*n2k 20
修改csproj文件以添加以下配置:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
...
<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
另请参阅此答案,解释为什么某些警告无法提升为错误.
| 归档时间: |
|
| 查看次数: |
11512 次 |
| 最近记录: |