SonarScanner有效检查代码质量

1. sonarQube与SonarScanner的关系

sonar 是一个用于代码质量管理的开放平台,支持Windows、Linux、Mac。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具以及持续集成工具,与持续集成工具不同,Sonar 并不是简单地把不同的代码检查工具结果直接显示在 WEB页 面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便的不同规模和种类的工程进行代码质量管理。

c582edc6bd00a16a64f3cad3d8851c35.png

2. 安装SonarScanner

在安装 SonarScanner 之前,需要先安装 jdk(至少 1.8 及以上版本)。

  • 下载SonarScanner

https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/

下载完后,是一个 zip 压缩包。直接解压到目标目录即可,这里解压到

C:\jenkins\sonar-scanner-4.7
  • 配置环境变量

SONAR_SCANNER_HOME

SONAR_SCANNER_HOME=C:\jenkins\sonar-scanner-4.7

PATH

PATH=%PATH%;C:\jenkins\sonar-scanner-4.7\bin

打开cmd命令行,使用如下命令可以检查是否安装成功

sonar-scanner  --version

3. SonarScanner配置文件说明

找到 conf/sonar-scanner.properties 配置文件。大致内容如下

#Configure here general information about the environment, such as SonarQube server connection details for example
#No information about specific project should appear here

#----- Default SonarQube server
#sonar.host.url=http://localhost:9000

#----- Default source code encoding
#sonar.sourceEncoding=UTF-8

其中 sonar.host.url 配置项是 SonarQube 服务器的地址,根据具体情况配置。先安装如下配置

sonar.host.url=http://127.0.0.1:9000
sonar.sourceEncoding=UTF-8

即 SonarQube  服务器安装在本机,端口是 9000。

4. 项目配置

假设需要扫描的项目是

C:\jenkins\SpringBoot_v2

扫描其中的 src 目录

f7647dde0c47a0748fe697c9c6c69e5a.png

C:\jenkins\SpringBoot_v2 添加一个 sonar-project.properties 文件。配置文件模板如下:

# must be unique in a given SonarQube instance
sonar.projectKey=my:project

# --- optional properties ---

# defaults to project key
#sonar.projectName=My project
# defaults to 'not provided'
#sonar.projectVersion=1.0

# Path is relative to the sonar-project.properties file. Defaults to .
#sonar.sources=.

# Encoding of the source code. Default is default system encoding
#sonar.sourceEncoding=UTF-8

配置项说明:

  • sonar.projectKey:在 sonarQube 服务器上的实例键名;必须是唯一的,不可重复相同

  • sonar.projectName:在 sonarQube 服务器上的项目名称

  • sonar.projectVersion:项目版本号,可以不指定

  • sonar.sources:指定源代码目录,可以指定扫描目录。填写sonar-project.properties文件所在目录的相对路径

如图,sonar-project.properties 文件在 C:\jenkins\SpringBoot_v2想要扫描 src 目录,就直接填写

sonar.sources=src

9f6f8c6ef122636f81febe1bdf5b8121.png

  • sonar.sourceEncoding:编码格式指定

配置如下

sonar.projectKey=SpringBoot_v2:1.0
sonar.projectName=SpringBoot_v2
sonar.projectVersion=1.0
sonar.sources=src
sonar.sourceEncoding=UTF-8

5. 进行扫描

如果安装了 sonarQube 服务器就可以进行静态代码扫描了。目前没有安装的情况下,进入目录

C:\jenkins\SpringBoot_v2

在 cmd 命令行执行命令

sonar-scanner

出现以下错误

46f81cca9b341ab922882b663494a7fe.png

下篇讲解 sonarQube 服务器搭建。

ecd6f4737d5a4ddea7ad57dc70c0d777.png

分享&在看

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG弄潮儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值