sonarqube - 使用 Sonar 运行器分析项目时,停止执行其他插件中的传感器

标签 sonarqube sonar-runner

我为 Sonar 创建了一个语言插件,用于扫描所有项目文件是否存在自定义违规。问题是,当我使用 sonar-runner 分析项目时,来自其他语言插件的传感器也在执行,并导致不希望的副作用。如何防止来自其他语言插件的传感器执行?

我相信这个问题源于我正在使用我的语言插件扫描 .groovy 文件这一事实。我希望能够在不从 Groovy 插件中触发 Groovy 传感器的情况下执行此操作。

这是 sonar-runner 输出的相关部分(以 ** 开头的行是我想要停止的):

09:35:07.647 INFO  - -------------  Scan Generic Plugin Test
09:35:07.650 INFO  - Load module settings
09:35:07.909 INFO  - Quality profile : [name=Sonar Way,language=gnrc]
09:35:07.922 INFO  - Excluded tests: 
09:35:07.922 INFO  -   **/package-info.java
09:35:07.962 INFO  - Configure Maven plugins
09:35:07.986 INFO  - Compare to previous analysis (2014-08-14)
09:35:07.996 INFO  - Compare over 30 days (2014-07-15, analysis of 2014-08-13 09:38:32.24)
09:35:08.014 INFO  - Compare to previous version
09:35:08.213 INFO  - Base dir: /workspace
09:35:08.213 INFO  - Working dir: /workspace/.sonar
09:35:08.213 INFO  - Source dirs: /workspace
09:35:08.213 INFO  - Source encoding: UTF-8, default locale: en_US
09:35:11.986 INFO  - Sensor Generic Source Importer...
09:35:15.361 INFO  - Sensor Generic Source Importer done: 3375 ms
09:35:15.361 INFO  - Sensor GenericSensor...
09:35:16.007 INFO  - Sensor GenericSensor done: 646 ms
**09:35:16.007 INFO  - Sensor GroovySensor...
**09:35:23.745 INFO  - GMetrics completed: 4033ms
**09:35:24.528 INFO  - Sensor GroovySensor done: 8521 ms
**09:35:24.528 INFO  - Sensor Groovy CoberturaSensor...
**09:35:24.529 INFO  - No Cobertura report provided (see 'sonar.groovy.cobertura.reportPath' property)
**09:35:24.529 INFO  - Sensor Groovy CoberturaSensor done: 1 ms
...
...

这是我的 sonar-project.properties:
sonar.projectKey=com.example.test:generictest
sonar.projectName=Generic Plugin Test
sonar.projectVersion=1.0
sonar.projectDescription=
sonar.language=gnrc
sonar.sources=.
sonar.projectBaseDir=.
sonar.sourceEncoding=UTF-8

最佳答案

我在执行 JavaScript 传感器的 Java 项目中遇到了同样的问题。我解决了以下 Sonar 属性的问题

sonar.language=java
sonar.exclusions=*.js

我不认为上述是实现您想要的绝对正确的方法,但我找不到任何属性来禁用传感器,所以我采用了上述方法。

关于sonarqube - 使用 Sonar 运行器分析项目时,停止执行其他插件中的传感器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25311511/

相关文章:

configuration - SonarQube Visual Studio Bootstrapper 找不到程序集

java - 如果新代码低于覆盖阈值,如何让构建失败?

java - 新整数与 valueOf

java - 无法启动sonarqube 6.1

java - 在 Java 项目上运行 sonar-runner 时出现异常

docker - 无法在 docker 容器 : Permission denied 内运行 Sonar 扫描仪

java - pmd:UseConcurrentHashMap 不工作?

sonarqube - StartSonar 包装器停止错误

javascript - 如何使用 Sonar JavaScript 插件检测全局变量

c - 在 C 项目上运行 sonar-runner 时,我得到这个 Missing or bad plugin