SonarScanner 整合 SonarQube 代码质量检查完美方案
1. 汉化 SonarQube
虽然已经把 SonarQube 服务搭建好了,但是界面是英文的;不利于母语是汉语的我们查看相关指标。其实 SonarQube 提供了中文插件包,进行国际化。
-
下载插件
https://github.com/xuhuisheng/sonar-l10n-zh
下载下来是一个jar包:sonar-l10n-zh-plugin-9.3.jar
-
安装
直接把 jar 放到如下目录
C:\jenkins\sonarqube-9.3.0\extensions\plugins
然后重启服务,即可看到中文界面。
还有另外一种简单的中文插件安装方法(其他插件也可以这样安装),就是登陆 SonarQube 后,然后按照下图的方式安装
2. SonarScanner 进行代码检查
进入如下目录
C:\jenkins\SpringBoot_v2
然后打开一个 cmd 命令行窗口,在该目录下执行命令
sonar-scanner
错误提示需要提供认证才能登录 SonarQube 。在 sonar-project.properties
增加如下配置
sonar.login=admin
sonar.password=admin123
增加完后,继续扫描
出现上图的错误,sonar.java.binaries 是项目编译后的class文件的目录,需要继续增加配置
sonar.java.binaries=./target/classes
./target/classes
一定要是一个存在的目录。正常在svn或者git服务器下载的项目代码是没有 classes 目录的。可以直接配置成
sonar.java.binaries=.
sonar-project.properties
的完整配置如下
sonar.projectKey=SpringBoot_v2:1.0
sonar.projectName=SpringBoot_v2
sonar.projectVersion=1.0
sonar.sources=src
sonar.sourceEncoding=UTF-8
sonar.login=admin
sonar.password=admin123
sonar.java.source=1.8
sonar.java.binaries=./target/classes
另外 sonar.login 和 sonar.password 配置项也可以采用 token 模式,后续讲解。
3. SonarQube 上查看代码检查结果
待 sonar-scanner
命令执行完后,登录
http://localhost:9000/
至此,SonarScanner 与 SonarQube 整合进行代码质量扫描就 OK 了。
另外,SonarScanner 提供了与eclipse、idea、jenkins等工具的集成。