使用 jdk 11 docker 镜像运行 Sonarqube 阶段

问题描述 投票:0回答:1

我目前正在构建一个使用 JDK 8 的项目。但是,在执行 SonarQube 阶段时,我遇到了一个与日志相关的问题,该日志表明我的 SonarQube 服务中安装的插件之一与项目使用的 JDK 版本不兼容建筑。

现在,我正在尝试找到一个使用 JDK 版本 11 运行 SonarQube 阶段的解决方案。这是该阶段的当前配置:

stage('Sonar') {
    environment {
        SCANNER_HOME= tool 'sonarscanner'
    }
    agent {
        docker {
            label 'sonar'
            image "artifact.me.com/docker/jdk/jdk-11:latest"
            args "-itd -v ${SCANNER_HOME}:/var/sonarScanner --privileged=true"
        }
    }
    steps {
        withSonarQubeEnv('SonarQube') {
            withVault([configuration: configuration, vaultSecrets: secrets]) {
                sh "/var/sonarScanner/bin/sonar-scanner -D ..."
            }
        }
    }
}

但是,到达此阶段时构建会卡住,以下是控制台中显示的错误消息:

15:13:06  Login Succeeded
15:13:06  [Pipeline] {
15:13:06  [Pipeline] isUnix
15:13:07  [Pipeline] withEnv
15:13:07  [Pipeline] {
15:13:07  [Pipeline] sh
15:18:14  process apparently never started in /data/jenkins/workspace/sonar-test@2@tmp/durable-928c6c08
15:18:14  (running Jenkins temporarily with -Dorg.jenkinsci.plugins.durabletask.BourneShellScript.LAUNCH_DIAGNOSTICS=true might make the problem clearer)
jenkins jenkins-pipeline sonarqube java-11 docker-image
1个回答
0
投票

#一个可能的解决方案/解决方法是使用 sonar-scanner-cli jar 文件#

第 1 步:
通过使用artifactory代理从maven-central下载sonar-scanner jar文件。
url=artifact.me.com/artifactory/maven-central/org/sonarsource/scanner/cli/sonar-scanner-cli/5.0.1.3006/sonar-scanner-cli-5.0.1.3006.jar

第2步: 使用 java 运行声纳扫描仪。 sh“java -jar ./sonar-scanner -D ...”

© www.soinside.com 2019 - 2024. All rights reserved.