SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。
安装 SonarQube
- 下载好sonarqube后,解压打开bin目录,启动相应OS目录下的
sonar
。本文使用的是mac,故相应地址为/Users/mobile/Documents/sonarQueue/sonarqube-7.0/bin
- 执行启动命令
sonar.sh start
- 打开浏览器输入
http://localhost:9000
可以使用
sonar.sh -h
来查看其他可使用命令
配置 SonarQube
-
安装汉化插件,配置-> 应用市场
汉化插件 -
安装 Android Lint 插件
Android Lint插件
若插件安装失败,可以在
SonarQube
的根目录下,找到extensions/plugins
手动将下载好的插件放到该目录,然后重启即可
配置 Gradle
- gradle2.1.4版本之后配置方式如下,在项目根目录的 build.gradle下添加如下代码
// plugins段放置位置有要示,放在buildscript段前面会报错,放到文件最末尾也报错,紧跟buildscript放置OK,其余位置没有偿试
plugins {
// 添加插件信息
id "org.sonarqube" version "2.6.2"
}
subprojects {
// 在subprojects段中添加以下块内容
sonarqube {
properties {
property "sonar.sourceEncoding", "UTF-8"
property "sonar.projectKey", "SMEC_SIE_TAKE_ANDROID" //projectkey
property "sonar.projectName", project.name //projectname
property "sonar.sources", "src/main/java" //源码,写这个就行
property "sonar.projectVersion", "1.0.0" //版本,随意
property "sonar.binaries", "build/intermediates/classes"
}
}
}
配置 gradle.properties
配置根目录下的 gradle.properties
, 若没有,则需要新建
systemProp.sonar.host.url=http://localhost
// 若有 token,此处可以直接设置 login为 token: a82dc8d81f4f8bfb552b24a4f0b1c7932a935135
systemProp.sonar.login=admin
systemProp.sonar.password=admin
执行代码检测任务
- 在目录下执行
./gradlew.sh sonarqube
- 执行 gradle 中的
project -> other -> sonarqube
image.png
配置自己的规则
- 复制
Android Lint
重命名为AndroidLintRule
image.png - 修改
AndroidLintRule
的值为Sonar Way
image.png
删除部分和代码规范不一致的风格
- 例如:此规则建议所有的集合或数组都需要
clone()
来执行
image.png
修复代码
-
根据指示,进行相关的代码修复,可以创建和分配 bug 给指定的人,并修复相关问题
image.png
网友评论