我试图用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