spring-boot - 找不到ID为 'org.sonarqube'的插件

标签 spring-boot gradle sonarqube code-coverage jacoco

我正在尝试使用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
 }
}

最佳答案

就像'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'应该可以正常工作了。

关于spring-boot - 找不到ID为 'org.sonarqube'的插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45126215/

相关文章:

java - Spring Boot:包中的类未加载

android - Gradle 有错误,但构建良好

android - 构建 apk 时遇到问题,合并 dex 文件时出错 :

android - Mac 上的 SonarQube 在插件后无法启动

java - @DataJpaTest 无法排除响应式(Reactive) mongo 存储库

spring - 如何将Spring Boot与Elasticsearch 7.3连接

gradle - com.jfrog.artifactory gradle 插件 401 未经授权

java - Sonal lint : change this condition so that it does not always evaluate to true

java - SonarQube 如何使用 Web API 登录

java - Spring Boot API 自定义错误响应契约