【问题标题】:Plugin with id 'org.sonarqube' not found未找到 ID 为“org.sonarqube”的插件
【发布时间】:2017-12-20 22:15:04
【问题描述】:

我正在尝试使用 gradle 为我的项目实施代码覆盖率测量的声纳。 我们正在使用 gradle-4.0.1 和 sonarqube-6.4 。

当我从命令行运行 gradle sonarqube 时出现此错误-

Plugin with id 'org.sonarqube' not found.

我尝试了一些代码更改,但没有成功,请帮助。 我的 build.gradle 文件如下 -

buildscript {
    ext {
        springBootVersion = '1.5.4.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'org.sonarqube'
apply plugin: "jacoco"
apply plugin: "java"
apply plugin: "war"
apply plugin: "org.springframework.boot"


sonarqube {
  properties {
    property "sonar.projectName","Spring4WebService Code Coverage Demo"
    property "sonar.projectKey", "org.sonarqubeJacocoCodeCoverage"
    property "sonar.reportPath" , "${project.buildDir}/jacoco/test.exec"
  }
}


test{
  ignoreFailures = true
}


ext {
    jacocoVersion = '0.7.6.201602180812'
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}


sourceSets {
  main.java.srcDir "src/main/java"
  test.java.srcDir "src/test/java"
}

springBoot {
  mainClass = "com.concretepage.config.WebAppInitializer"
}

dependencies {
    compile('org.springframework.boot:spring-boot-starter-web','com.fasterxml.jackson.core:jackson-databind')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

jacoco{
  toolVersion = "${jacocoVersion}"
}

jacocoTestReport {
 reports{
  html.enabled=true
  xml.enabled=true
  csv.enabled=true
 }
}

【问题讨论】:

    标签: spring-boot gradle sonarqube code-coverage jacoco


    【解决方案1】:

    就像'org.springframework.boot' 插件一样,'org.sonarqube' 插件不属于 Gradle。它是一个第三方插件,所以你需要将它添加为buildscript依赖:

    buildscript {
        ext {
            springBootVersion = '1.5.4.RELEASE'
        }
        repositories {
            mavenCentral()
            maven {
                url "https://plugins.gradle.org/m2/"
            }
        }
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
            classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.5"
        }
    }
    

    现在apply plugin: 'org.sonarqube' 应该可以正常工作了。

    【讨论】:

      【解决方案2】:

      就我而言,它看起来像:

      plugins {
         id 'groovy'
         id 'application'
         id 'org.sonarqube' version '3.0'
      }
      
      repositories {
         mavenCentral()
      }
      
      sonarqube {
         properties {
            property "sonar.host.url", "http://sonarqube:9000"
            property "sonar.sources", "src"
         }
      }
      
      tasks['sonarqube'].dependsOn test
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-07-28
        • 2020-03-01
        • 2021-01-08
        • 1970-01-01
        • 2019-08-04
        • 2017-06-03
        • 2021-11-05
        • 2021-11-06
        相关资源
        最近更新 更多