SonarQube7.4的配置与进行静态代码扫描

一. 下载

sonarqube下载地址:https://www.sonarqube.org/downloads/

sonar-scanner下载地址:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner

二. 安装

       安装前确保电脑已经安装jdk1.8 +,以及MySQL >=5.6 && < 8.0,所以, mysql版本过高的话,要降级,当然sonar支持的数据库除了mysql还有其他类型的数据库,具体请参照官方文档的介绍。

2.1 安装SonarQube web server

1. 将下载好的sonarqube压缩包解压,解压后的目录如下:

2 到解压目录的bin\windows-x86-64(我的是64位的)目录下,双击StartSonar.bat文件 启动SonarQube

3 到浏览器界面,输入 : http://localhost:9000,能够进入界面证明安装成功。

2.2 安装数据库

1. 我这里安装的MySQL5.6,具体安装请看我的博客中有关MySQL5.6的安装。

2. 为sonar创建一个数据库
create database 数据库名;  

3. 创建sonarqube用户并进行授权

CREATE USER 'username'@'host' IDENTIFIED BY 'password'; // 创建用户并设置密码
// username 为创建的用户名
host为对应的主机地址,本地就是localhost
password为设置的密码

GRANT ALL ON *.* TO '用户名'@'localhost'; //对用户进行授权操作

4. 修改SonarQube配置文件,添加Mysql相关配置
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=用户名  // 刚刚创建的sonarQube用户
sonar.jdbc.password=密码   // 创建用户对应的密码
sonar.sorceEncoding=UTF-8 // 设置编码格式为UTF-8

2.3 重启服务端

1. 退出 SonarQube 服务端
    在之前弹出的cmd窗口执行ctrl + c,
    弹出来的提示选择Y,退出SonarQube服务

2.  双击StartSonar.bat文件, 重新启动SonarQube
    这次因为要进行数据库的初始化操作,所以需要的时间可能稍微久一点

3. 启动成功后,浏览器输入 : http://localhost:9000 进入界面

4. 登录 

    点击界面右上角的登录按钮, 进行登录 :
    初始的账户名 : admin
    初始的密码  :  admin

如上 , SonarQube的安装已经OK!

附 : 一些关键配置的修改,如 主机地址,context,端口号等:
通常情况下使用默认的配置即可!
文件 /conf/sonar.properties
#sonar.web.host=0.0.0.0 
#sonar.web.context=
#sonar.web.port=9000

三. 使用

3.1. 安装必要的插件 (最重要的是汉化包)

点击导航栏的 config, 选择应用市场搜索Chinese pack, 点击install进行安装 安装成功后, 重启SonarQube ! 如下图 : 进入到了很友好的中文界面!

到这里,Sonar服务就安装成功了,下面就是怎样利用sonar来分析你所写的代码了。

3.2 使用sonar-scanner进行静态代码扫描

1 将下载的压缩包解压缩到任意目录。解压后的目录如下:

5d27cd3759eeab6948ca4e87ae4d5a0543b.jpg

2 打开Sonar Scanner根目录下的/conf/sonar-scanner.properties文件,配置如下:

393522fca531cfb612aeb3c0d9b47c2ddee.jpg

3 配置环境变量

新建系统变量:SONAR_SCANNER_HOME=Sonar Scanner根目录;

修改系统变量path,新增%SONAR_SCANNER_HOME%\bin(不新建SONAR_SCANNER_HOME直接新增path亦可);

4 打开cmd面板,输入如下图,则表示环境变量设置成功:

31e80528ac01205506d290313c333dee357.jpg

5 开始使用项目进行分析代码,在这里我是使用一个已经编译好的完整项目来分析的,且项目能够正常运行的友情提示,为了保险起见,可以新建一个目录,然后将该项目拷贝此目录下,然后在项目根目录下新建sonar-project.properties文件,内容如下:

5205485aec28012b2585ed36e54b8e5e2b3.jpg

6 设置完后,打开cmd面板,进入项目根目录下,然后输入“sonar-scanner”命令,执行代码分析:

03eac34160fda6c16e6727d24ea3b1c93e9.jpg

 分析成功的界面为:

d29bfea25f495de9354e25d3d0ff3246bb4.jpg

当然,若分析代码失败,可以输入sonar-scanner -X,进而找到为什么分析失败,这就好比项目开发中的debug模式。

7 然后打开http://localhost:9000 (SonarQube服务器),输入账号密码,即可查看代码分析结果,如图:

20469becfbb7fa25d5da423572281348e94.jpg

三. 下面是我在执行sonar-scanner的过程中遇到的问题,仅供参考

1  解决sonar scanner扫描报错Please provide compiled classes of your project with sonar.java.binaries property问题:

只需在项目的sonar-project.properties文件中添加如下语句:

sonar.java.binaries=项目路径/target/classes,如上面第五点中最后一行。

以上只介绍了利用sonar-scanner进行静态代码分析,后面将会介绍使用maven的方式进行分析和在开发工具里面集成sonar进行分析代码

转载于:https://my.oschina.net/u/3354389/blog/2991949

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值