首先搭建SonarQube平臺(tái)可以參照:SonarQube的Android環(huán)境配置
前半段搭建平臺(tái),后半段在連接平臺(tái)與編譯器的過程中出現(xiàn)了問題,使用.properties配置文件只能提交一個(gè)module的配置,一般AndroidStudio開發(fā),很可能有多個(gè)module在項(xiàng)目中,開發(fā)過程中自己造輪子的話,也需要進(jìn)行檢查,翻箱倒柜的找,終于在google上的多個(gè)文章中拼出了一套配置,強(qiáng)烈建議Android開發(fā)人員系統(tǒng)的學(xué)習(xí)gradle,Groovy語言,我剛剛學(xué)習(xí),否則進(jìn)行自動(dòng)化配置太累了。下面直接貼配置,在項(xiàng)目根目錄build.gradle,也就是最外面的gradle配置中:
buildscript {
repositories {
jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.4.0-alpha5' //這是我的gradle build版本,大家隨意
classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.3" //這是sonarquebe插件版本,可以去這里找:https://plugins.gradle.org/plugin/org.sonarqube
//...剩下都是其他你自己的配置
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
apply plugin: 'org.sonarqube'
subprojects {
sonarqube {
properties {
property "sonar.host.url", "http://localhost:9000/" //我本地SonarQube平臺(tái)的配置
property "sonar.projectName", project.name //projectname
property "sonar.projectKey", "XXXXDemo" //projectkey
property "sonar.language", "java" //語言
property "sonar.sourceEncoding", "UTF-8" //編碼
property "sonar.sources", android.sourceSets.main.java.srcDirs //源碼,寫這個(gè)就行
property "sonar.projectVersion", "1.0.0" //版本,隨意
}
}
task wrapper(type: Wrapper) {
gradleVersion = '3.4.1'//我自己的gradle版本號(hào),各位隨意
}
}
以上參數(shù),參見
https://plugins.gradle.org/plugin/org.sonarqube#new-plugin-mechanism-info-body
https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Gradle (有VPN訪問更快,你懂得??)
項(xiàng)目根目錄下執(zhí)行./gradlew sonarqube,如果找不到命令的話,參照 https://www.zybuluo.com/xtccc/note/275168 配置命令,再執(zhí)行,到SonarQube平臺(tái)上查看,項(xiàng)目下的module就都進(jìn)行了檢查。
之后再研究多配置質(zhì)量檢查。