SonarQube是一个开源的代码质量管理系统,它能够帮助开发团队管理和改进源代码的质量。并且支持Java、Python、PHP、JavaScript、CSS等25种以上的语言,可以与各种持续集成工具(如Jenkins、GitLab CI、Travis CI等)集成,实现自动化代码质量检查。还提供了大量的编码规则,帮助开发人员遵循最佳实践,减少代码缺陷。同时用户还可以根据项目需求自定义规则,以满足特定的编码标准和质量要求。
1、sonar安装、集成与使用
SonarQube 是 Sonar 的 Web 管理应用,在集成sonar之前我们需要在本地或者服务器搭建好SonarQube来对sonar规则进行管理。
1.1 sonarQube安装
由于sonarQube是用于代码质量检测,它可以用于多种工作环境,个人代码编写以及企业级应用都有涉及,这里介绍sonarQube Web管理端在windows和linux系统中的搭建:
1.1.1 windows本地搭建
下载sonarqubexxx.zip并且解压即可(这里不推荐最新版下载 因为我下载不好 但是还是提供一下官方最新版的下载连接 如下):
下载地址:http://www.sonarqube.org/downloads/
下面是sonar7.8版本的安装链接,(是从Sonar本地环境搭建(Windows)_sonar安装部署 windows-优快云博客这里找到的)
度盘链接:
通过网盘分享的文件:sonar
链接: 百度网盘 请输入提取码 提取码: kgjn
--来自百度网盘超级会员v3的分享
环境:
java:JDK1.8
数据库:mysql5.7
- node-v12.18.2(分析css和js文件时需要,如没有此需求可以不安装)
windows本地安装
下载好之后解压sonarqube-7.8到任意目录
由于sonarqube是web端 所以我们还需要配置响应的数据库
这里选择mysql 版本需要在 5.6~8.0之间
我这里使用的是mysql5.7
使用cmd登录mysql 执行一下命令
#创建sonar数据库
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
#创建一个sonar用户并把这个用户的密码设置为soanr:
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
#将第二步中创建的sonar数据库的所有权限赋给第三步中创建的sonar用户:
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
FLUSH PRIVILEGES;
创建完成后进入conf目录找到目录下的sonar.properties文件配置mysql连接
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://localhost:3307/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
之后进入wrapper.conf文件配置jdk路径
wrapper.java.command=C:\Program Files\Java\jdk-1.8\bin\java
之后找到bin目录下相应的启动文件启动即可
这里我们打开windows-x86-64 双击StratSonar.bat即可(默认端口为9000)
等待出现
访问127.0.0.1:9000即可进入sonar页面
安装插件
汉化:
Tags · xuhuisheng/sonar-l10n-zh · GitHub
去github上下载 之后解压出来找到
复制到\extensions\plugins目录下即可
sonar-scanner安装
解压
到任意目录 找到sonar-scanner下的conf进行配置
将一下内容复制到配置文件中
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://localhost:3307/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
useConfigs=maxPerformance
sonar.sourceEncoding=UTF-8
sonar.login=admin
sonar.password=admin
配置sonar-scanner环境变量
新建系统环境变量
sonarScanner
G:\sonar\sonar-scanner-cli-4.2.0.1873-windows\sonar-scanner-4.2.0.1873-windows
编辑Path环境变量 添加sonarScanner
%sonarScanner%\bin
之后打开cmd 执行sonar-scanner -v查看是否配置成功
成功会显示
1.2 Linux安装
首先我们需要在linux中安装JDK17、pgsql。
- 安装 OpenJDK 17
sudo apt-get update
sudo apt-get upgrade
#安装解压工具
sudo apt-get install wget unzip -y
1.2 idea部署sonarLink进行使用
在idea中搜索sonarlink
找到homepage 去下载往期适配版本即可
之后配置sonarlint。
在设置中找到
之后点+
之后选择连接方式
可以选择账号密码登录或者是token登录
token登录按以下操作即可
输入名称生成即可
之后将令牌输入到idea中连接即可
连接完成后就可以对我们的代码进行分析