2017-07-16 96 views
5

Próbuję zaimplementować sonar z gradle dla miary kodu dla mojego projektu. używamy gradle-4.0.1 i sonarqube-6.4.Wtyczka o identyfikatorze "org.sonarqube" nie została znaleziona

kiedy biegnę Gradle sonarqube z linii poleceń uzyskać to ERROR-

Plugin with id 'org.sonarqube' not found. 

próbowałem kilka zmian w kodzie, ale bez powodzenia, proszę o pomoc. Mój plik build.gradle jest below-

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 
} 
} 

Odpowiedz

8

Podobnie jak wtyczki 'org.springframework.boot', wtyczka 'org.sonarqube' nie należą do Gradle. Jest to plugin innej firmy, więc trzeba go dodać jako zależność 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" 
    } 
} 

Teraz apply plugin: 'org.sonarqube' powinny działać prawidłowo.