1

我有这个构建系统

  • 摇篮 2.14
  • SonarQube 5.6.1
  • sonarqube gradle 插件 2.0.1

我的 sonarqube.properties 看起来像这样:

 property "sonar.host.url", "http://myserver"
 property "sonar.login", "mylogin"
 property "sonar.sourceEncoding", "UTF-8"
 property "sonar.projectVersion", project.ext.sonarVersion
 property "sonar.java.source", "1.7"
 property "sonar.java.target", "1.7"
 property "sonar.sources", "src/main/java"
 property "sonar.exclusions", "src/generated/**"

 if (file("$projectDir/src/test/java").exists()) {
   property "sonar.tests", "$projectDir/src/test/java"
 }
 if (file("$projectDir/build/intermediates/classes/debug/").exists()) {
   property "sonar.java.binaries", "$projectDir/build/intermediates/classes/debug/"
   property "sonar.binaries", "$projectDir/build/intermediates/classes/debug/"
 }
 if (file("$projectDir/build/test-results/debug/").exists()) {
   property "sonar.junit.reportsPath", "$projectDir/build/test-results/debug/"
 }
 def sonarLibraries = configurations.compile.join(",")
 property 'sonar.libraries', sonarLibraries
 property 'sonar.java.libraries', sonarLibraries

 property 'import_unknown_files', true

./gradlew sonarqube -Dsonar.password=xxx 运行。

但我看到不是问题的问题,例如“未使用的私有构造函数”。在我升级到 5.6.1 和 sonarqube 插件之前,这不是问题。似乎不会检查 .class 文件。有人对 Gradle/SonarQube 和 Android 有同样的问题吗?

4

1 回答 1

2

这与您的扫描方法无关。这是关于正在使用的 Java 插件的版本。我敢打赌,当您升级 SonarQube 时,您也会(有意或无意地)升级 Java 插件。

每个新版本的语言插件都会引入新规则,并且通常会改进底层检测方法。或者至少这是意图。确实会发生,在向前迈出两步时,他们有时会后退一步。

如果您觉得您看到了误报(正如您在评论中指出的那样),您应该在SonarQube Google Group提出它们。

于 2016-07-28T17:29:14.130 回答