我在 Jenkins 中安装了 Sonarqube 插件, 已经从 Jenkins 配置中配置了 sonarqube 服务器和 sonarqube 扫描仪:
但是当我运行管道时,我收到此错误:
错误:此作业 (sonarqube) 中定义的 SonarQube 安装与任何配置的安装都不匹配。可配置安装数量:1.
导致上述错误的原因是什么?
您显然请求使用安装“sonarqube”,但配置的名称是“SonarQubeScanner”。 那些不匹配。 我还注意到,将其称为“SonarQubeScanner”并不完全正确。 这是 SonarQube 的安装,而不是扫描仪。 对于 SonarQube 安装和 SonarQube 扫描仪使用相同的名称是没有意义的。 它们是不同的东西。
您应该有正确的服务器名称,该名称与 jenkinsfile 中的服务器名称相匹配。
例如,
stage('Static Code Analysis: SonarQube') {
when { expression { params.action == 'create' } }
steps {
script {
def SonarQubeServerName = 'sonarqube-api'
withSonarQubeEnv(SonarQubeServerName) {
sh 'mvn clean package sonar:sonar'
}
}
}
}
在上面的groovy脚本中,声纳服务器名称是sonarqube-api。它应该与 jenkins 配置中给出的名称匹配。