Oleg Majewsk..
9
简短回答:是的,您可以使用SonarQube社区IntelliJ插件
答案很长:
假设你有一个build.gradle,如:
apply plugin: "sonar-runner"
sonarRunner {
sonarProperties {
// can be also set on command line like -Dsonar.analysis.mode=incremental
property "sonar.host.url", "http://your.sonar.server:9000"
property "sonar.analysis.mode", "incremental"
property 'sonar.sourceEncoding', 'UTF-8'
property 'sonar.language', 'java'
property 'sonar.profile', 'my_profile'
}
}
subprojects {
sonarRunner {
sonarProperties {
properties["sonar.sources"] += "src/main/java"
}
}
}
....
然后你可以用gradle运行本地声纳分析:
$ ./gradlew sonarRunner
这将生成一个sonar-report.json文件:
$ cat build/sonar/sonar-report.json
现在你已经拥有插件所需的一切:
SonarQube服务器
本地分析脚本
名称:gradle脚本
脚本:/ path/to/android-studio-example-project/gradlew sonarRunner
sonar-report.json的路径:/path/to/android-studio-example-project/build/sonar/sonar-report.json
配置完成后,您可以通过在Intellij(Android Studio)中运行SonarQube(新问题)检查来查看新问题
我用这个项目作了一个例子:
和sonarqube服务器4.0,只有基于squid的规则集(4.4无法分析gradle项目)