【云原生技术】 代码解析-Jenkinsfile 脚本在流水线里调用 SonarScanner CLI,把代码分析结果上传到 SonarQube 服务器

下面这段 Jenkinsfile 脚本是在流水线里调用 SonarScanner CLI,把代码分析结果上传到 SonarQube 服务器。
逐行解释如下:

sh """
$SCANNER_HOME/bin/sonar-scanner \        # ① 调用 SonarScanner,可执行文件放在 SCANNER_HOME/bin
 -Dpmd.skip=true  \                      # ② 跳过 PMD 规则集(如果只想跑 Sonar 内置规则)
 -Dmaven.test.failure.ignore=true \      # ③ 忽略 Maven 单元测试失败(对多模块 Maven 项目常见)
 -Dsonar.projectKey=$env.projectKey \    # ④ 项目唯一标识,取 Jenkins 环境变量 projectKey
 -Dsonar.projectVersion=1.0 \            # ⑤ 本次扫描对应的版本号,可用于后期对比
 -Dsonar.sourceEncoding=UTF-8 \          # ⑥ 告诉 Sonar 源码文件采用 UTF-8 编码
 -Dsonar.language=java \                 # ⑦ 指定主要语言;新版 Sonar 已自动识别,此参

你可能感兴趣的:(云原生,kubernetes,容器,服务器)