目录
Linux安装SonarQube和sonar-scanner详细安装及配置
一、sonarqube操作流程规范:
1.1 上传、解压、创建用户、启动
1.2 创建用户(elasticsearch不能以root用户启动),并赋予权限
1.3 切换用户,启动SonarQube
1.4 浏览器测试
二、配置数据库信息:
2.1 编辑sonar.properties文件
2.2 添加数据库信息,用于启动SonarQube时,创建表
三、sonar-scanner安装配置
3.1 上传、解压
3.2 配置环境变量
3.3 编辑配置文件,添加数据库配置信息:
四、上传项目至扫描目录+扫描项目
4.1 上传项目
4.2 在项目根目录下面创建sonar-project.properties配置文件
4.3 执行扫描
五、异常汇总及解决方案
技术选型:
数据库 | mysql-5.7.25 |
代码分析 | sonarqube-7.6 |
扫描器 | sonar-scanner-cli-4.0.0.1744-linux |
汉化包 | sonar-l10n-zh-plugin-1.26.jar |
下载地址:链接:https://pan.baidu.com/s/1bak9cDDc2Edc4S3gn4fFsA 提取码:tas3
上传:
# rz ..
解压命令:
# unzip zip类型压缩包名称
创建用户(Win2018@)
# useradd sonar
# passwd sonar
赋予权限
# chown -R sonar.sonar /usr/local/sonar/sonarqube-7.6
切换至sonar用户下启动sonar
# su sonar
启动 SonarQube
# cd /usr/local/sonar/sonarqube-7.6
# ./sonar.sh start
浏览器测试地址:
172.18.0.119:9000
用户名:admin
密码:admin
cd /usr/local/sonar/sonarqube-7.6/conf/
vim sonar.properties
sonar.jdbc.url=jdbc:mysql://172.18.0.119:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root
创建数据库
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
# rz ..
# tar -xvf ...
编辑全局配置文件profile:
# vim /etc/profile
配置sonar-scanner
export SONAR_RUNNER_HOME=/usr/local/sonar/sonar-scanner-4.0.0.1744-linux/
$SONAR_RUNNER_HOME/bin
# vim /usr/local/sonar/sonar-scanner-4.0.0.1744-linux/conf/sonar-scanner.properties
sonar.jdbc.url=jdbc:mysql://172.18.0.119: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
# rz ..
# must be unique in a given SonarQube instance
sonar.projectKey=项目名称
# this is the name displayed in the SonarQube UI
sonar.projectName=项目名称
sonar.projectVersion=1.0
sonar.java.binaries=target/classes
sonar.sources=扫描文件目录
注:target/classes 此文件夹只有编译后,才会生成,默认无此目录,也可以将此目录替换为扫描的路径即可!
在sonar-project.properties所在目录 也就是 项目根目录 执行sonar-scanner就可以扫描了
sonar-scanner
报错:java.lang.IllegalStateException: Error when executing blame for file ...
原因:有中文字符导致
解决:配置->SCM->菜单中,将Disabled the SCM Sensor设置为true,或者在svn页面,设置svn的用户名和密码。
SonarQube之——安装完后出现SonarQube is under maintenance. Please check back later.
SonarQube在安装完后运行:127.0.0.1:9000出现如下提示:
SonarQube is under maintenance. Please check back later.
Whilst waiting, you might want to check new plugins to extend the current functionality.
If you are an administrator and have no idea why this message is showing, you should read the upgrade guide
这个需要安装完后先运行http://127.0.0.1:9000/setup 更新下 SonarQube