闲着没事干,随手学着尝试搭建代码检测服务器,做个笔记。
一、环境准备
mysql5.7 sonarqube7.6 sonar-scanner-3.3.0 jdk1.8
注1:以上标明的四个软件版本亲测可用。 注2:sonarqube7.1 -sonarqube7.6 需要使用mysql5.7 左右,mysql8 版本过高不行,目前只测了sonarqube7.1 、sonarqube7.6 两个版本 注3:sonarqube5.6 以前用jdk7 或者更低版本,sonarqube5.6 以后使用jdk1.8 ,sonarqube7.9 左右用jdk11 了,目前只测了sonarqube7.1 、sonarqube7.6 、sonarqube7.9 三个版本
二、下载安装sonarqube7.6
-
下载sonarqube7.6 版本:https://binaries.sonarsource.com/Distribution/sonarqube/ -
环境准备:先安装好mysql 和jdk 注:mysql 数据安装后,需要先创建一个数据库,用来生成sonarqube 的表,我这里生成库名为sonar -
解压安装包,解压目录最好不要带中文,程序员都懂~ -
解压结束后,可以先双击运行sonarqube-7.6\bin\windows-x86-64\StartSonar.bat ,然后访问(默认端口9000)查看是否可以启动. -
配置文件,打开sonarqube-7.6\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=Ffcs#2020
sonar.login=admin
sonar.password=admin
sonar.web.port=9000
- 配置环境变量
新建SONAR_HOME= E:\sonarqube\sonarqube-7.6 ,PATH 尾巴加上%SONAR_HOME%\bin; - 配置中文汉化包
sonar-l10n-zh-plugin-1.26 ,下载地址:https://github.com/xuhuisheng/sonar-l10n-zh/tags?after=sonar-l10n-zh-plugin-8.1 将下载的jar包复制到sonarqube-7.6\extensions\plugins 底下。 注:之所以需要手动下载,是因为发现打开后,最新的汉化包只支持sonarqube9 ,与我当前的版本不匹配,下面是对应表
SonarQube 6.0 6.1 6.2 6.3 6.4 6.5 6.6 6.7 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 8.0
sonar-l10n-zh 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 8.0
- 重启
sonarqube-7.6\bin\windows-x86-64\StartSonar.bat 这个启动的过程比较慢,以为需要生成数据库表,可以去数据库刷新查看 - 访问http://localhost:9000
登录,账号密码默认admin 可以看到中文包只支持版本9的,所以需要自己下载
三、下载安装sonar-scanner-3.3.0
- 下载地址: https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
- 解压
- 配置文件
直接进入sonar-scanner-3.3.0.1492-windows\conf\sonar-scanner.properties ,添加几行配置
sonar.host.url=http://localhost:9000
sonar.sourceEncoding=UTF-8
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=Ffcs#2020
sonar.language=java
sonar.login=admin
sonar.password=admin
http.authentication.preemptive=true
http.socket.timeout = 60000
- 配置环境变量
新建SONAR_SCANNER_HOME= E:\sonarqube\Sonar-Scanner\sonar-scanner-3.3.0.1492-windows ,PATH 尾巴加上%SONAR_SCANNER_HOME%\bin; - 测试
打开cmd,输入 sonar-scanner -v
四、检测项目代码
- 选择需要检测的项目,打开项目根目录
- 在根目录底下添加配置文件
sonar-project.properties
#项目在sonarqube的唯一标识
sonar.projectKey=Sonar-encry
#项目在sonarqube的名字
sonar.projectName=encrypData
#版本
sonar.projectVersion=1.0
#配置指定扫描目录,以sonar-project.properties的目录为相对路径,多个目录用“”隔开
sonar.sources=src
#classes文件目录,不加会报错
sonar.java.binaries=src/main/java
#语言
sonar.language=java
#编码
sonar.sourceEncoding=UTF-8
- 打开cmd,进入该项目根目录,执行
Sonar-Scanner - 成功后,刷新在
sonarqube 页面 说明配置成功!!!
|