J'ai cherché cette solution pendant trop longtemps maintenant, et je ne suis pas sûr si je l'ai ratée ou si j'ai simplement mal saisi quelque chose, mais mon script Gradle ne se compilera pas. Je suis en train de migrer vers Gradle, et je suis très nouveau avec. Je suis très habitué à utiliser Maven pour la gestion des dépendances, mais Gradle me semble le meilleur pour le moment. Après avoir exécuté cet extrait de code:
dependencies {
compile group: 'org.bukkit', name: 'bukkit', version: '1.7.9-R0.1-SNAPSHOT'
compile('io.ibj:MattLib:1.1-SNAPSHOT') {
exclude group: 'de.bananaco'
exclude 'net.milkbowl:vault:1.2.27'
}
compile group: 'net.citizensnpcs', name: 'citizens', version: '2.0.12'
compile group: 'com.sk89q', name: 'worldedit', version: '5.6.1'
compile group: 'com.sk89q', name: 'worldguard', version: '5.9'
compile group: 'net.milkbowl', name: 'vault', version: '1.2.12'
compile fileTree(dir: 'libs', includes: ['*.jar'])
}
REMARQUE: les plugins java, maven, nexus, shadow et rebel sont appliqués.
Lorsque j'exécute ma tâche Gradle, je rencontre cette erreur:
Could not find method compile() for arguments [[io.ibj:MattLib:1.1-SNAPSHOT], build_1b5iofu9r9krp7o8mme0dqo9l$_run_closure2_closure8@66fb45e5] on root project 'project'
Si je supprime la dépendance "MattLib" de mon projet et la réinsère en tant que
compile 'io.ibj:MattLib:1.1-SNAPSHOT'
Le script se termine, mais j'ai des problèmes de dépendance. J'ai lu ici:
dependencies {
compile("org.gradle.test.excludes:api:1.0") {
exclude module: 'shared'
}
}
(Extrait du chapitre 50 du manuel Gradle, http://www.gradle.org/docs/current/userguide/dependency_management.html )
que ce que j'ai DEVRAIT fonctionner, mais je ne comprends pas pourquoi cela ne fonctionne pas.
gradle --version sortie:
Groovy: 1.8.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
Ivy: 2.2.0
JVM: 1.8.0_05 (Oracle Corporation 25.5-b02)
OS: Windows 7 6.1 amd64
Des pensées?
Réponses:
Ça devrait être
exclude module: 'net.milkbowl:vault:1.2.27'
(ajoutermodule:
) comme expliqué dans la documentation pourDependencyHandler
lié à partir de http://www.gradle.org/docs/current/javadoc/org/gradle/api/Project.html#dependencies(groovy.lang.Closure) car laModuleDependency.exclude(java.util.Map)
méthode est utilisé.la source
Assurez-vous que vous modifiez le
build.gradle
fichier correct . J'ai reçu cette erreur lors de l'éditionandroid/build.gradle
plutôt queandroid/app/build.gradle
.la source
compile
est unconfiguration
qui est généralement introduit par un plugin (très probablement le plugin java) Jetez un œil au guide d'utilisation gradle pour plus de détails sur les configurations. Pour l'instant, ajouter le plugin java au-dessus de votre script de construction devrait faire l'affaire:la source
apply plugin: "kotlin"
Dans mon cas, toutes les
compile
déclarations sont en quelque sorte organisées sur une seule ligne. les séparer en lignes individuelles a résolu le problème.la source
Les étapes de Hope below vous aideront
Ajoutez la dépendance à votre build.gradle au niveau du projet:
Ajoutez le plugin à votre build.gradle au niveau de l' application:
build.gradle au niveau de l' application:
la source
Mauvais fichier gradle. Le bon est build.gradle dans votre dossier «app».
la source
Dans mon cas, j'ai dû supprimer certains fichiers créés par gradle à un moment donné de mon étude pour que les choses fonctionnent. Donc, nettoyer après avoir raté et puis ça s'est bien passé ...
Si vous avez rencontré ce problème dans un projet git, faites
git status
et supprimez les fichiers non révisés. (Pour moi, j'aielasticsearch
eu un problème avecplugins/analysis-icu
).Gradle Version
: 5.1.1la source
Juste pour mémoire: j'ai accidentellement activé le travail hors ligne sous Préférences -> Construction, exécution, déploiement -> Gradle -> décochez Travail hors ligne , mais le message d'erreur était trompeur
la source