【问题标题】:How to exclude a directory from the code analysis?如何从代码分析中排除目录?
【发布时间】:2015-06-05 13:14:37
【问题描述】:

对此有一些疑问,但没有一个能解决我的问题。

我使用 SonarQube 对我的一个项目进行代码分析,其中包含一个 Migrations 目录。我想从代码分析中排除该目录中的所有源文件。

在项目 Configuration->Settings->Exclusions->Files->Source Files Exclusions 我添加了"**/Migrations/.",但是在分析中结果我仍然在该目录中的代码文件中遇到问题。
我的项目的目录结构是这样的:\MyProject\Migrations\SourceFile.cs

我做错了什么?是我在错误的地方输入了通配符,还是我的通配符有误?

在我可以看到的日志中

13:06:23.460 INFO  - Copy-paste detection exclusions:
13:06:23.476 **/Migrations/*.*

但我也能看到

13:06:12.076 INFO  - Inspecting <MyProject>\Migrations\SourceFile.cs

【问题讨论】:

  • 你检查过这个 - docs.sonarqube.org/display/SONAR/Narrowing+the+Focus 这可能对你有用:sonar.exclusions=migrations/**/*
  • 是的,配置参数似乎是最合乎逻辑的选择,但实际上不同的设置参数起到了作用,答案中的详细信息。

标签: sonarqube code-analysis


【解决方案1】:

这是设置它的正确位置。请尝试/Migrations/**/MyProject/Migrations/**。当您处理您想要摆脱的问题之一时,您会看到您的“正则表达式”路径应该从什么开始。

还有一个提示:要查看结果,您必须重新构建项目,再次运行 sonar。 再一次,直到正确为止。

【讨论】:

  • 感谢您的建议,我尝试重新启动并简化条件,但这没有帮助。但是,我设法使其使用不同的配置参数,答案中的详细信息。
【解决方案2】:

我不得不使用不同的设置。

而不是配置->设置->排除->文件->源文件排除我不得不使用配置->设置->排除->问题->忽略多个问题标准

在此设置中,我必须将 RULE KEY PATTERN 设置为*,并且必须在 FILE PATH PATTERN 中设置路径通配符,**/Migrations/. 完美运行。

【讨论】:

  • 这适用于哪个版本的 SonarQube?
  • 这是 4.1 版。从那以后我更新到了最新的 5.1.1,但我还没有检查它是否还在工作。
猜你喜欢
  • 2020-04-17
  • 1970-01-01
  • 1970-01-01
  • 2019-12-26
  • 1970-01-01
  • 2015-05-24
  • 2023-03-16
  • 1970-01-01
  • 2010-09-07
相关资源
最近更新 更多