使用Sonarqube分析Android Studio(Gradle)项目

我试图用Sonarqube分析Android Studio项目.

我在我的PC上运行了sonarqube,该项目位于SVN存储库中.当我运行命令gradle sonarqube时,这是输出

对于porject(src /文件夹)中的所有类,消息是

Class 'abc' is not accesible through the ClassLoader

这是我的实际配置,根项目gradle文件

buildscript {
    repositories {
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.0'
        classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.0.1"
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

app gradle文件

apply plugin: 'com.android.application'
apply plugin: "org.sonarqube"

... android config
... dependencies etc ...
sonarqube {
    properties {
        property 'sonar.projectName', 'Material Design Sample'
        property 'sonar.working.directory', '$project.buildDir/sonar'
        property 'sonar.projectVersion', '1'
        property 'sonar.scm.provider', 'svn'
        property 'sonar.sources', 'src/main/java'
        property 'sonar.language', 'java'
        property 'sonar.sourceEncoding', 'UTF-8'
        property 'sonar.java.binaries', 'build'
        property 'sonar.java.libraries', 'libs/*.jar'
        property 'sonar.java.test.binaries', 'build'
        property 'sonar.java.test.libraries', 'libs/*.jar'
    }
}

我正在使用Sonar 5.5,Gradle 2.3和Java 7,我一直在阅读这篇documentation

我一直在阅读许多FAQ,Q& A网站,但我无法解决我的问题.

解决方法:

根据Gradle 2.1中引入的新的孵化,插件机制的构建脚本:

去掉

classpath
“org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.0.1”

将sonarqube插件应用到项目的app module gradle文件中

plugins {
    id "org.sonarqube" version "2.2.1"
}

构建或同步项目后,打开命令提示符并导航到gradle文件所在的app module目录.

执行gradle sonarqube并等待构建完成.

下面是我博客上的帖子链接,它提供了在Android中使用sonarqube扫描仪集成sonarqube的完整详细说明.

Integrating and Understanding SonarQube in Android

上一篇:linux – 无法运行由Elasticsearch引起的Sonar Server无法以root身份运行


下一篇:解决Python3下map函数的显示问题