一、Sonarqube简介
sonar是一款静态代码质量分析工具,支持Java、Python、PHP、JavaScript、CSS等25种以上的语言,而且能够集成在IDE、Jenkins、Git等服务中,方便随时查看代码质量分析报告;
sonar通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目,风险等级从A~E划分为5个等级;
同时,sonar可以集成pmd、findbugs、checkstyle等插件来扩展使用其他规则来检验代码质量;
注意:安装这里就不再阐述,可以参考我另外一篇文章:Linux安装与部署SonarQube
二、下载sonar-pdf-plugin插件
下载地址:https://gitee.com/zzulj/sonar-pdf-plugin/releases
1、这里我选择的是sonar-pdfreport-plugin-3.0.3.jar
jar包下载地址:https://gitee.com/zzulj/sonar-pdf-plugin/attach_files/484186/download/sonar-pdfreport-plugin-3.0.3.jar
注意:需要下载对应的版本,不同版本可能会出现不兼容、未知的情况。
2、上传sonar-pdf-plugin插件
把下载好的插件放到Sonarqube安装目录的extensions/plugins目录下,重启Sonarqube服务即可。
3、配置PDF导出插件
# 服务重启后可以看到配置页如下,PDF report为添加插件后新增页签。
填入Sonarqube管理员的username和password并保存,需要将原分析项目删除并重新分析项目。
4、创建测试项目
1)这里我们创建一个新令牌用来测试。
注意:这里以Java语言Maven项目为例,因为我这边没有其他语言的项目,其他语言的项目请自行测试
2)执行SonarQube扫描
进入要分析项目的根目录(当前目录下必须有pom.xml)cmd进入该目录下的命令界面执行mvn package sonar:sonar(旧版本可执行任意mvn命令后缀添加sonar:sonar进行代码分析,但较高版本sonar分析代码需要jar/war包)。
注意:需要mvn工具
mvn sonar:sonar \
-Dsonar.projectKey=Test \
-Dsonar.host.url=http://xxx.com \
-Dsonar.login=bd5695a663d82fac851e295fac3e43ccd3406136
3)成功分析代码并产出PDF会额外打印如下信息
4)下载PDF
点击项目下"更多 -->> Download Pdf Report",(对原有项目进行sonar扫描后才能输出pdf,之前的扫描结果不能输出pdf)
# 成功下载PDF分析报告
5)错误问题汇总
1、出现 {"error":"Report is not available. At least one analysis is required after installing the plugin!"}
解决方法:重新扫描项目。
2、出现 Can't retrieve project info. Parent project node is empty. Authentication?
解决方法:版本下错了,下载SonarQube兼容的插件版本。
至此,Sonarqube导出PDF分析报告部署完毕。
若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如本文“对您有用”,欢迎随意打赏,谢谢!
上海市 电信 1F
感谢