使用sonar-scanner掃描項目時,需要在掃描項目中添加sonar-project.properties文件,進行相關配置。
這些配置具體是什么意思?
# 定義唯一的關鍵字
sonar.projectKey=devops-hello-service
# 定義項目名稱
sonar.projectName=My project
# 定義項目的版本信息
sonar.projectVersion=1.0
# 指定掃描代碼的目錄位置(多個逗號分隔,java項目源代碼一般在src目錄下面)
sonar.sources=.
# 執行項目編碼
sonar.sourceEncoding=UTF-8
# 指定掃描java語言,如果不指定,則掃描目錄下存在的全部
sonar.language=java
# 掃描java項目時,指定編譯文件所在目錄,不指定該目錄會報錯
sonarjava.binaries=target/classes
一個項目帶多個src目錄,怎么配置掃描路徑
假如目錄如下:
MySrcFolder
src1
src2
src3
src4
您只能使用sonar.sourcesproperty 或sonar.exclusionsandsonar.inclusions屬性來執行此操作。
例子:
MySrcFolder
src1
src2
src3
src4
如果只想分析src1和src3,則如下配置:
sonar.sources=MySrcFolder/src1,MySrcFolder/src3
或者:
sonar.sources=MySrcFolder
sonar.exclusions=src2/**,src4/**
或者:
sonar.sources=MySrcFolder
sonar.inclusions=src1/**,src3/**
以下規則適用於exclusions和inclusions屬性:
* Match zero or more characters
** Match zero or more directories
? Match a single character
file: Prefix to define a pattern based on absolute path
參考:
https://stackoverflow.com/questions/23443974/sonar-project-properties-file
https://www.jianshu.com/p/db0665e15ddf
https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/
https://docs.sonarqube.org/latest/analysis/analysis-parameters/