java代码需要有授权文件才能启动_搭建代码质量管理平台sonarQube

c1c8717699d976c96279e9d964ec4385.png

对于中大型开发团队来说,开发人员的经验水平难免参差不齐,而木桶定律往往一块短板就会造成严重的质量问题乃至项目崩溃。所以需要代码质量管理平台来进行分析,找出隐藏的bug,提升代码交付的质量。

下面使用sonarQube搭建一个代码质量管理平台。

一、部署:

1、下载sonarQube

https://www.sonarqube.org/downloads/ 下载最新版本

解压到本地磁盘

D:Toolssonarqube-7.5

2、安装mysql,创建数据库

mysql版本5.6.42

创建数据库:create database sonar;

创建用户并授权:CREATE USER 'sonar'@'%' IDENTIFIED BY 'sonar';

3、修改mysql配置

这里要添加一个配置项,否则在后面启动sonarQube的时候会报错,数据库初始化失败,错误信息如下:

Caused by: java.sql.SQLException: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED.

解决方法是在my.conf里面加一项:

binlog-format=MIXED # 指定binlog格式为mixed。默认为STATEMENT,数据无法正常migration

重启mysql,service mysql start

4、修改sonarQube的配置文件D:Toolssonarqube-7.5sonarqube-7.5confsonar.properties

在Mysql >=5.6下面加上:

sonar.jdbc.url=jdbc:mysql://188.188.0.15:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

sonar.jdbc.username=sonar

sonar.jdbc.password=sonar

sonar.sorceEncoding=UTF-8

5、至此可以启动sonarQube了,执行D:Toolssonarqube-7.5sonarqube-7.5binwindows-x86-64StartSonar.bat

程序会进行数据库初始化,需要等待一点时间,启动完成后如下:

659ca9e91a89453370248beae8c9d489.png

数据库如下:

595083c2ccd41553842f67e0ab737225.png

6、打开浏览器访问http://localhost:9000/ 可以看到页面,点击登录,默认是admin/admin

二、使用

我们的项目是maven工程,maven版本是3.5.4。

1、修改maven的配置文件settings.xml,加入以下配置项:

b196177c8e05996cf3cfd1e94844362c.png

2、到项目主目录下执行如下命令:

mvn clean verify sonar:sonar

看到以下内容就是成了:

142c5c753be66aff4fbb5ae344f38dd7.png

3、刷新页面查看分析报告

4acc99f551636c8da68608fc3003ec2e.png

三、代码质量管理平台不单是代码扫描工具,也是搭建自动化版本发布平台的重要组件之一。

OK!!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值