当前位置: 首页 > 工具软件 > Project Sonar > 使用案例 >

Sonar Scanner 分析参数:即如何配置sonar-project.properties文件

沈德寿
2023-12-01

可以在多个位置配置项目分析设置。下面是层次结构:

  • 在 UI 中定义的全局属性适用于所有项目(从顶部栏转到"管理>配置 >常规设置" )
  • 在 UI 中定义的项目属性覆盖全局属性值(在项目级别,转到项目设置> 常规设置)
  • 在项目分析配置文件定义的项目分析参数将覆盖 UI 中定义的参数
  • 分析/命令行参数,在启动分析时定义(使用命令行),"-D"覆盖项目分析参数

全局和项目级别界面中显示的大多数属性也可以设置为分析参数,但下面列出的参数只能在分析时设置。

强制参数

服务器

属性描述默认
sonar.host.url服务器 URLhttp://localhost:9000

项目配置

属性描述默认
sonar.projectKey项目的独特属性。允许的字符是:字母、数字、和 至少有一个非数字。对于 Maven 项目,这默认为:

可选参数

项目标识

属性描述默认
sonar.projectName将在 Web 界面上显示的项目的名称。对应 Maven 项目,否则使用项目密钥。如果未提供,并且 DB 中已有名称,则不会被覆盖
sonar.projectVersion项目版本对应 Maven 项目

认证
默认情况下,需要用户身份验证以防止匿名用户浏览和分析实例上的项目,并且在运行分析时需要传递这些参数。身份验证在全局安全(/实例管理/安全/)设置中强制实施。

属性描述默认
sonar.login具有项目执行分析权限的 SonarQube 用户的身份验证令牌或登录名。
sonar.password如果使用身份验证令牌,请设置为空。如果使用的是登录名,则这是用户名的密码。

Web 服务

属性描述默认
sonar.ws.timeout等待 Web 服务呼叫响应的最大时间(以秒为单位)。只有在分析期间等待服务器响应 Web 服务调用遇到超时时,才对修改此默认值有用。60

项目配置

属性描述默认
sonar.projectDescription项目描述。对应 Maven 项目
sonar.links.homepage项目主页。对应 Maven 项目
sonar.links.scm项目源存储库。对应 Maven 项目
sonar.sources包含主源文件的目录路径,使用逗号分隔。从 Maven、Gradle、MSBuild 项目的生成系统读取。当未提供时,将默认为项目基目录。
sonar.sourceEncoding源文件的编码。系统编码
sonar.working.directory设置使用Sonar Scanner触发的分析的工作目录(版本大于 2.0)。.scannerwork
sonar.scm.provider此属性可用于显式告诉 SonarQube 在项目上使用的 SCM(如果自动检测不起作用)。

分析日志记录

属性描述默认
sonar.log.level控制分析期间生产的日志的数量/级别。INFO
sonar.verbose向客户端和服务器端分析日志添加更多详细信息。FALSE
sonar.scanner.dumpToFile输出日志到指定文件
sonar.scanner.metadataFilePath设置扫描仪写入文件的位置 sonar.working.directory的值

跳过指定检查
在项目下的 sonar-project.properties 扫描配置文件中添加:

# 这里启用了两个忽略,e1 和 e2,分别忽略了两个检查
sonar.issue.ignore.multicriteria=e1,e2

# Console usage - ignore a single class
sonar.issue.ignore.multicriteria.e1.ruleKey=java:S106
sonar.issue.ignore.multicriteria.e1.resourceKey=**/SonarExclude.java
# Too many parameters - ignore the whole package
sonar.issue.ignore.multicriteria.e2.ruleKey=java:S107
sonar.issue.ignore.multicriteria.e2.resourceKey=com/baeldung/sonar/*.java
 类似资料: