Sonar Qube的使用方式很多,Maven可以整合,也可以采用sonar-scanner的方式,再查看Sonar Qube的检测效果
- Sonarqube集成在Maven实现代码检测
- 使用sonar-scanner客户端的方式
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.login>admin</sonar.login>
<sonar.password>123456789</sonar.password>
<sonar.host.url>http://192.168.95.131:9010</sonar.host.url>
</properties>
</profile>
$ mvn sonar:sonar
# 安装unzip
$ yum -y install unzip
# 进入到sonar-scanner安装包存放的目录
$ cd /data/soft
# 解压 sonar-scanner zip安装包
$ unzip sonar-scanner-cli-4.7.0.2747-linux.zip
$ mv sonar-scanner-4.7.0.2747-linux /usr/local/sonar-scanner
# 进入sonar-scanner配置文件目录
$ cd /usr/local/sonar-scanner/conf/
# 配置sonarqube相关信息
$ vi sonar-scanner.properties
# 进入Jenkins的安装目录
$ cd /usr/local/deploy/jenkins/
# 编辑 docker-compose.yml
$ docker-compose.yml
$./docker-compose-restart.sh
sonar-scanner 命令中
-Dsonar.login=c8483abbf03c0fd4212ffce2c1e93c5ae8cd65bd
使用
-Dsonar.sources
:被扫码的源码目录-Dsonar.projectname
:项目名称-Dsonar.projectKey
:项目key,一般与项目名称一致即可-Dsonar.java.binaries
:项目编译后的字节码-Dsonar.login
:Sonarqube用户登录授权token
# 进入需要扫码的工程目录
$ cd /usr/local/deploy/jenkins/jenkins-data/workspace/jenkins-publish-demo
# 使用sonar-scanner命令检测代码质量
$ /usr/local/sonar-scanner/bin/sonar-scanner \
-Dsonar.sources=./ \
-Dsonar.projectname=jenkins-publish-demo-linux \
-Dsonar.projectKey=jenkins-publish-demo-linux \
-Dsonar.java.binaries=./target/ \
-Dsonar.login=c8483abbf03c0fd4212ffce2c1e93c5ae8cd65bd