一.简介
SonarQube 是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量。 通过插件形式,可以支持众多计算机语言,比如
java
,C#
,go
,C/C++
,PL/SQL
,Cobol
,JavaScrip
,Groovy
等。sonar
可以通过PMD
,CheckStyle
,Findbugs
等等代码规则检测工具来检测你的代码,帮助你发现代码的漏洞,Bug,异味等信息。
Sonar 不仅提供了对 IDE
的支持,可以在 Eclipse
和 IntelliJ IDEA
这些工具里联机查看结果;同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar
。
二.安装SonarQube
1、下载
- 官网传送门
- 官网社区传送门
- 8.5社区版下载传送门
- 社区版基本够用,其他版本收费
- 社区版导出的报告差强人意
- 官网文档传送门
2、将下载好的压缩包解压到非中文路径下
3、环境准备
-
JDK
-
数据库
7.8版本以后不再支持
MySQL
,将使用PostgreSQL
,大家使用的时候要注意版本,我用的是7.4-- 建库 CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; -- 创建用户并设置密码 CREATE USER 'sonar'@'localhost' IDENTIFIED BY '1234'; -- 对用户进行授权操作 GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar'; FLUSH PRIVILEGES;
-
为
SonarQube
增加数据连接配置,修改./conf/sonar.properties
#\sonarqube-7.2.1\conf中的sonar.properties增加数据库配置(注意数据库版本要保持一致) #存放sonar基本数据结构的数据库地址 sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false sonar.jdbc.username=test sonar.jdbc.password=1234 sonar.sorceEncoding=UTF-8 #默认登录账户 sonar.login=admin sonar.password=admin #端口 sonar.search.port=9009
-
添加环境变量
# SONAR_RUNNER_HOME D:\ProgramDevelopment\sonarqube-7.2.1 # Path %SONAR_RUNNER_HOME%\bin
-
汉化
- 添加汉化
jar
包,将jar
文件复制到Sonarqube
主目录extensions/plugins
文件夹内- jar包传送门
- 也可以启动后再界面内下载插件来汉化(配置选项登录后才显示,英文版的按照位置来就行)
- 添加汉化
-
添加导出
PDF
的jar
包,将jar
文件复制到Sonarqube
主目录extensions/plugins
文件夹内 -
jar包传送门
-
修改
Maven
配置文件settings
,在<profiles>
标签中添加如下配置:
<profile><id>sonar</id><activation><activeByDefault>true</activeByDefault></activation><properties><sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url><sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver><sonar.jdbc.username>test</sonar.jdbc.username><sonar.jdbc.password>1234</sonar.jdbc.password><sonar.host.url>http://localhost:9009</sonar.host.url></properties>
</profile>
- 启动
# 启动
打开\sonarqube-7.2.1\bin\windows-x86-64下的StartSonar.bat
# 重启
# 1.dos窗口启动的服务必须通过ctrl+c来结束
# 2.任务管理中结束所有java进程
# 3.重启SonarQube
-
访问
- 地址:http://localhost:9000
- 默认用户名:admin
- 默认密码:admin
-
启用阿里
p3c
代码规范,将jar
文件复制到Sonarqube
主目录extensions/plugins
文件夹内- 官方传送门
- 已经编译好的jar包传送门
-
添加项目
- 随意编一个令牌码输入进去并记住着码,一个码对应一个项目
- 选中语言及构建方法点击右侧的复制
- 进入项目目录并启动CMD窗口,粘贴上一步复制的内容
- 随意编一个令牌码输入进去并记住着码,一个码对应一个项目
- 编译完成后
- 导出PDF报告
- 导出PDF报告
三.IDEA安装SonarLint插件
- 配置SonarQube servers