SonarQube的初步使用

今天本来想做Jenkins+Docker的持续集成,参考文章 中用了很大的篇幅来讲SonarQube的使用,想着代码检查将来肯定要做,所以干脆研究了一下Jenkins中如何使用SonarQube。

一 启动一个SonarQube服务器

1)下载 最新版的zip安装包:

2) 以root登录到服务器上,创建名为sonar的组和账号:

groupadd sonar
useradd -g sonar sonar
id sonar
echo "sonar" | passwd --stdin sonar &> /dev/null

操作完之后,就可以使用sonar:sonar登录到服务器上。

3)确保java在服务器上已经安装:

java -version

4)  确保mysql已经安装:

mysql --version

5) 设置数据库:

# mysql -uroot –p
mysql> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> CREATE USER 'sonar' IDENTIFIED BY 'Zkong_****';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'Zkong_****';
mysql> GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'Zkong_****';
mysql> FLUSH PRIVILEGES;

6)安装SonarQube:

将下载到的sonarqube-7.7.zip文件上传到sonar用户的主目录下(如:/home/sonar)

解压

unzip -oq sonarqube-7.7.zip

修改配置文件 sonarqube-7.7/conf/sonar.properties

sonar.jdbc.username=sonar
sonar.jdbc.password=Zkong_****
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

SonarQube服务器默认使用9000端口,如果已经被占用可以修改sonar.web.port的值来改变。

7)启动:

sonarqube-7.7/bin/linux-x86-64/sonar.sh start  启动服务

sonarqube-7.7/logs/sonar.log 启动日志

用root账户权限启动时会有权限问题(参考

执行

chown -R sonar:soanr sonarqube-7.7

然后通过sonar用户登录,并执行sonar.sh start来启动(过程中可能需要root删除root启动过程中生成的temp文件,详情参考sonar.log文件)

8) 登录:

浏览器地址输入 http://服务器ip:9000/, 用admin:admin账号可登录

 

二 Jenkins上配置SonarQube

1)在插件管理的可选插件中搜索sonarqube,选择SonarQube Scanner for Jenkins安装(SonarQube Plugin貌似已经下架)

2)添加SonarQube服务器:

系统管理->系统设置

最新的版本的SonarQube Scanner只支持token登录,token的获取可以通过登录服务器通过以下步骤获得:

3)在Jenkins服务器上安装SonarQube Scanner:

系统管理->全局工具配置:选择自动安装(手动安装做好配置)

4)在任务配置的Post Steps中添加"Execute SonarQube Scanner" step. 

注意:Task to run一定留空,否则执行会报错!

Analysis properties参数设置:

sonar.projectKey=jsh
sonar.projectName=jsh
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
#根据实际情况进行填写
sonar.java.binaries=C:\\Users\\Administrator\\.jenkins\\workspace\\JSH\\target\\classes\\
sonar.sources=C:\\Users\\Administrator\\.jenkins\\workspace\\JSH\\src\\main\\java\\
sonar.exclusions=**/*.xml,**/*.bat

5)运行结果:

任务执行完成之后会给出代码分析的链接

 

转载于:https://my.oschina.net/u/4042451/blog/3032677

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值