忽略多个条件不起作用的问题

Ignore Issues on Multiple Criteria not working

我想禁用 C# 规则 "Remove this cast and edit the interface to add the missing functionality" (csharpsquid:S3215)。一般情况下不是,但对于文件夹中的所有文件 "something\Business\Genome\*.cs") ("something"可以是一个或多个目录)

我正在尝试在此 SonarQube 项目上使用选项 "Ignore Issues on Multiple Criteria",但我无法找到正确的设置(或者这个功能可能根本不起作用?)。

到目前为止我尝试过的组合:

Rule Key Pattern               File Path Pattern 
csharpsquid:S3215              **/Business/Genome/*.cs
csharpsquid:S3215              **\Business\Genome\*.cs
csharpsquid:S3215              **//Business//Genome//*.cs
*:S3215                        **/Business/Genome/*.cs
*:S3215                        **\Business\Genome\*.cs
*:S3215                        **//Business//Genome//*.cs

我什至不知道是规则键模式还是文件路径模式不匹配...:-/

2016 年 3 月 8 日更新: 昨晚我 运行 进行了一些额外的测试。我在全局级别配置了它,而不是项目级别,我使用了

Rule Key Pattern               File Path Pattern 
csharpsquid:S3215              **/?usiness/?enome/*.cs

排除大小写问题:也没有成功。

然后我只用了

Rule Key Pattern               File Path Pattern 
csharpsquid:S3215              **/*.cs

看看它是否有效,确实有效。 所以不知何故我的路径一定是错误的,但我不知道如何。

更新 08.03.16 (2): 这是构建服务器日志中的一行:

08:57:50.854 INFO  - 0/658 files analyzed, starting to analyze: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\Tools\Business\Genome\Absence.cs

我很确定这不是外壳问题。但我还有一个怀疑。我扫描了整个解决方案,显然 SonarQube 将该解决方案中的每个项目都视为一个组件,并单独扫描每个 component/project。扫描路径是否可能与项目相关?因为我在日志中也看到了这个:

08:57:43.701 INFO  - Loading plugin stylecopanalyzers
08:57:43.924 INFO  - Base dir: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\Tools\Business\Genome
08:57:43.924 INFO  - Working dir: C:\Program Files (x86)\Jenkins\workspace\Tools .Net (Nightly)\.sonarqube\out\.sonar...
08:57:44.103 INFO  - Source paths: Absence.cs, ...

文件 inclusions/exclusions 基于相对于每个 SonarQube 模块(即 Visual Studio 项目)的路径。所以如果"Business"是一个VS项目,这确实行不通。