web-dev-qa-db-fra.com

Quel est le bon plugin Gradle pour supporter la méthode 'fournie'?

J'essaie actuellement d'inclure le programme d'assistance Lombok dans mon projet Gradle, mais si vous suivez leurs instructions pour Gradle dans mon build.gradle, l'erreur suivante apparaît:

Erreur: (11, 0) Erreur de script de génération, méthode Gradle DSL non prise en charge trouvée: 'Fourni ()'!

Les causes possibles pourraient être:

  • vous utilisez la version Gradle où la méthode est absente
  • vous n'avez pas appliqué le plugin Gradle qui fournit la méthode 
  • ou il y a une erreur dans un script de construction 

Mon fichier build.gradle actuel:

apply plugin: 'Java'

sourceCompatibility = 1.5
version = '1.0'

repositories {
    mavenCentral()
}

dependencies {
    provided "org.projectlombok:lombok:1.14.4"
    testCompile group: 'junit', name: 'junit', version: '4.11'
}
30
kapitanpattimura

À partir de la version 2.12, provided scope est appelé compileOnly


Ancienne réponse:

La portée fournie est disponible dans le plugin 'war' ( http://www.gradle.org/docs/current/userguide/war_plugin.html , providedCompile) Si vous ne voulez pas utiliser le plugin 'war', il existe également un problème ouvert concernant JIRA concernant le champ d'application "/ fourni" http://issues.gradle.org/browse/GRADLE-784 , la solution suggérée consiste à créer votre propre configuration:

configurations {
   provided
}

et configurez-le pour qu'il soit utilisé avec votre classpath de compilation:

sourceSets {
    main {
        compileClasspath += configurations.provided 
    }
}
42
endriu_l

Vérifiez votre fichier de niveau de niveau d'application. Si une ligne ressemble à ceci:

compile dependency.gson provided dependency.javaxAnnotation

Editez le comme ceci:

compile dependency.gson 
provided dependency.javaxAnnotation

Ça devrait marcher.

0
mahendra chaudhary