web-dev-qa-db-fra.com

Plugin avec l'ID 'org.sonarqube' introuvable

J'essaie d'implémenter un sonar avec gradle pour mesurer la couverture de code pour mon projet. nous utilisons gradle-4.0.1 et sonarqube-6.4.

lorsque j'exécute gradle sonarqube à partir de la ligne de commande, j'obtiens cette erreur -

Plugin with id 'org.sonarqube' not found.

J'ai essayé quelques modifications de code mais pas de chance, aidez-moi. Mon fichier build.gradle est comme ci-dessous-

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
 }
}
11
Deepak S

Tout comme le 'org.springframework.boot' plugin, le 'org.sonarqube' le plugin n'appartient pas à Gradle. Il s'agit d'un plugin tiers, vous devez donc l'ajouter en tant que dépendance 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"
    }
}

Maintenant apply plugin: 'org.sonarqube' devrait fonctionner correctement.

18
Lukas Körfer