代码之家  ›  专栏  ›  技术社区  ›  Steve Kennedy

没有名为SonarQube Scanner 2.8的工具发现错误

  •  1
  • Steve Kennedy  · 技术社区  · 7 年前

    我按照这些说明为詹金斯下载了SonarQube扫描仪插件。我已经为SonarQube扫描仪正确配置了这些jenkins全局设置。SonarQube服务器已设置并正常运行。

    https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins#AnalyzingwithSonarQubeScannerforJenkins-AnalyzinginaJenkinspipeline

    但当构建运行时,会产生以下错误: 未找到名为SonarQube Scanner 2.8的工具。

    enter image description here

    我正在使用Jenkins声明性管道脚本进行管道构建。

    我用的是詹金斯·弗尔。2.131. 我正在使用“SonarQube Scanner for Jenkins”插件版本2.8.1。我相信Jenkins服务器是一种常见的linux风格。我没有使用任何版本的Maven,也不需要它来构建我的项目。

    我想插件为我在詹金斯上安装了真正的扫描仪文件。除了插件提供给我的以外,我还需要安装一些版本的scanner命令文件吗?也就是说,除了Jenkins服务器需要安装的插件之外,还有其他东西吗?我希望SonarQube插件能为我提供在Jenkins build上运行所需的一切。

    以下是我剧本的相关部分:

     stages {
       stage("SonarQube Analysis") {
          agent any
          steps {
            script {
                def scannerHome = tool 'SonarQube Scanner 2.8';
                withSonarQubeEnv("foo") {
                  sh "${scannerHome}/bin/sonar-scanner"
                }
            }
          }
        }
    

    以下是全局配置的屏幕截图:

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  4
  •   agabrys    7 年前

    我想你没有在詹金斯全球工具配置中添加扫描仪。您可以通过执行以下步骤来完成:

    • 点击 Manage Jenkins
    • 选择 Global Tool Configuration
    • 滚动到 SonarQube Scanner
    • 添加SonarQube扫描仪2.8

    SonarQube Scanner 2.8 configuration

        2
  •  0
  •   Anton    5 年前

    可能对maven的用户来说是真实的

    stage("SonarQube analysis") {
            steps {
                script {
                    def scannerHome = tool 'SonarQube Scanner';
                    withSonarQubeEnv('SonarQube Server') {
                        sh 'mvn clean package sonar:sonar'
                    }
                }
            }
        }