sonar-scanner扫描参数

本文介绍了SonarQube平台的sonar-scanner工具,用于代码质量分析。主要内容包括配置sonar.properties文件的参数说明,如项目名称、编码、服务器地址、排除和包含规则等,帮助开发者提升代码质量并减少错误风险。
摘要由CSDN通过智能技术生成

sonar-scanner 是一个用于分析代码质量的命令行工具,它基于 SonarQube 平台。SonarQube 是一个开源的代码质量检测平台,可以分析多种编程语言编写的代码,并提供相应的质量报告。通过 sonar-scanner 工具,您可以轻松地对项目代码进行静态分析,从而提高代码质量、降低潜在的错误和风险。

sonar-scanner 的主要使用方法如下:

 在项目根目录下创建一个名为 sonar.properties 的文件,用于配置分析参数。例如:

# sonar.properties  
sonar.projectName=MyProject  
sonar.projectVersion=1.0  
sonar.language=Java  
sonar.sourceCodeEncoding=UTF-8  
sonar.reportPath=report  

 具体参数说明如下:

sonar.
projectKey: 项目关键字

sonar.projectName:项目的名称

sonar.branch.name=develop:分支

sonar.sources:扫描的目录,一般是进入工程目录下进行扫描,如果在非根目录下执行扫描命令,还需要配合其他的参数才可以

sonar.java.binaries=: sonar 二进制路径(只有java工程需要)

sonar.host.url:sonarqube 服务器地址

sonar.login:创建项目时生成的令牌,但是也可以增加一个参数 password,通过用户名和密码进行扫描

sonar.sourceEncoding=UTF-8 编码

忽略规则配置

忽略配置包括以下类型

  • 排除指定目录:sonar.exclusions

排除public 下的所有文件及其子目录下的文件

sonar.exclusions=public/**/*

使用以下配置排除多个目录(逗号分隔的文件夹路径):

sonar.exclusions=public/**/*, test/**/*, application/third_party/**, application/logs/**

# 排除src/main/java/org/sonar目录下全部文件
# 但不包括其子目录下的文件

sonar.exclusions=src/main/java/org/sonar/*

# 排除bank目录及其子目录下的全部文件

sonar.exclusions=bank/**/*
  • 包含指定目录:sonar.inclusions

只扫描src目录下的文件

sonar.inclusions=src/**/*
  • 不需要检测重复代码的文件:sonar.cpd.exclusions

不检查src/assets目录下的所有文件重复度

sonar.cpd.exclusions=src/assets/**/*
  • 包含指定规则的文件不参与扫描:sonar.issue.ignore.allfile

文件中包含 sonarqube disable 字符串的文件不参与扫描,这样我们就可以对一些特殊文件进行排除,字符串由我们自己定义

sonar.issue.ignore.allfile=sonarqube disable
  • 指定的代码块不参与扫描:sonar.issue.ignore.block

从包含@layer的行到包含@endlayer的行之间的所有代码不进行扫描,对于一些误检或者我们不想改变的代码,可以自定义两个标记把他们包含起来,这样这些代码就不会参与扫描了

sonar.issue.ignore.block=e1,e2
sonar.issue.ignore.block.e1.beginBlockRegexp=@layer
sonar.issue.ignore.block.e1.endBlockRegexp=@layer
sonar.issue.ignore.block.e2.beginBlockRegexp=:deep
sonar.issue.ignore.block.e2.endBlockRegexp=:deep
  • 在指定文件中不检查某些规则:sonar.issue.ignore.multicriteria

项目目录下的所有ts文件不执行squid:S1195扫描规则

sonar.issue.ignore.multicriteria=e1,e2
sonar.issue.ignore.multicriteria.e1.ruleKey=Web:ImgWithoutAltCheck
sonar.issue.ignore.multicriteria.e1.resourceKey=**/*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

明算科

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

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

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

打赏作者

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

抵扣说明:

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

余额充值