前期准备
IDEA、Jenkins都有相关插件,需要提前安装相关插件
在主机上安装sonarqube,版本(sonarqube-7.3)http端口:9000 es端口:9001
启动sonarqube需要注意的点:
su sonar #避免创建temp下的es配置相关的目录是root用户组
source /etc/profile # 确保jdk版本>=1.8
/user/bin/sonar start
查看启动后的日志及通过netstat -nlp | grep 9000 或者 grep 9001 查看sonarqube服务正常启动
针对具体待扫描项目
首先,先设置好settings.xml文件;
然后,项目中设置sonarqube插件的sonar servername
最后,运行如下命令:
(1)先使用mvn clean和mvn install生成对应的class文件
(2)然后使用下面的命令进行代码审查
mvn sonar:sonar -Dsonar.issuesReport.html.enable=true
-Dsonar.analysis.mode=preview # 设置 mode,默认为preview
-Dsonar.issuesReport.lightModeOnly=true # 设置是否只生成新增问题的报告
-Dsonar.issuesReport.html.enable=true # 设置生成 HTML 格式的报告
-Dsonar.issuesReport.html.name=xxxx # 设置生成 HTML 报告的文件名字
-Dsonar.issuesReport.html.location=/xx/xx # 设置生成 HTML 报告的文件存储路径
-Dsonar.issuesReport.console.enable=true # 设置报告输出到控制台
-Dsonar.issuesReport.html.enable=true
(3) 单机跑代码的过程有点卡
Jenkins上集成
Manage Jenkins→ Configure System→ SonarQube servers→ 设置sonarqube的服务地址及token信息等,截图如下:
其中Server URL为上面提及的http端口对应的访问链接;token通过在sonarqube服务器中my account中进行添加,输入Name产生token,输入到jenkins的此处;
通过Jenkins上的SonarQube插件链接到Sonarqube服务器进行报告查看
创建job设置预处理步骤:
主要就属性进行设置:
sonar.projectKey=$JOB_NAME
sonar.projectName=$JOB_NAME
sonar.projectVersion=1.0
sonar.sources=$WORKSPACE/src
sonar.java.binaries=$WORKSPACE/target/classes
sonar.language=java
sonar.sourceEncoding=UTF-8
网友评论