一、Sonar安装与部署
- 所需软件:
JDK(1.7以上版本)
maven(3.0以上版本)
MySQL - 安装saonar:
下载地址:https://www.sonarqube.org/downloads/
解压压缩包并前往sonarqube-7.3\bin\windows-x86-64打开StartSonar.bat启动sonar。
请求localhost:9000,看到如下页面则启动成功。
- 配置sonar:
创建sonar数据库。
配置sonar config文件。
打开sonarqube-7.3\conf目录下的sonar.properties添加。
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin
以上属性依次为:
- 数据库连接地址
- 数据账号密码
- sonar登陆账号密码
-
重启sonar服务:
在dos界面ctrl + c退出批处理操作,再重新运行StartSonar.bat。
如果是第一次连接数据库本次重启会比较缓慢。
会在所配置数据库中新建如下表:
重启后进入localhost:9000点击登陆输入账号密码(sonar.properties中所配置的)可进入。
-
安装汉化包:
可前往“配置 – 应用市场”安装中文包。
二、集成Maven分析代码
- 配置setting文件:
需要再maven的setting.xml(我的是在C:\Users.m2目录下)中进行sonar的配置。
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:mysql://127.0.0.1:3306/sonar</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>root</sonar.jdbc.username>
<sonar.jdbc.password>root</sonar.jdbc.password>
<!-- SERVER ON A REMOTE HOST -->
<sonar.host.url>http://127.0.0.1:9000</sonar.host.url>
</properties>
</profile>
- 分析代码:
进入要分析项目的根目录(当前目录下必须有pom.xml)cmd进入该目录下的命令界面执行mvn package sonar:sonar(旧版本可执行任意mvn命令后缀添加sonar:sonar进行代码分析,但较高版本sonar分析代码需要jar/war包)。
执行命令后根据所分析项目的大小等待一段时间后如下图显示则程序分析完成。
前往sonar服务页面刷新就会出现分析结果。
三、导出分析报告
- 下载sonar-pdf-plugin:
前往https://gitee.com/zzulj/sonar-pdf-plugin开源社区下载pdf导出插件并放到sonarqube-7.3\extensions\plugins目录下,重启sonar服务。
- 配置PDF导出插件:
服务重启后可以看到配置页如下,PDF report为添加插件后新增页签。
填入username和password并保存,将原分析项目删除并重新分析项目。
成功分析代码并产出PDF会额外打印如下信息
- 下载PDF:
点击项目下“更多 – Download Pdf Report”