J'ai un projet Gradle 6.0 avec Spring 2.1.7.
Quand j'essaie de refresh all gradle projects
de intellij
J'ai une erreur:
Impossible de charger la classe 'org.gradle.api.internal.plugins.DefaultConvention'. Les causes possibles de cette erreur inattendue sont les suivantes:
Dans le cas de processus Gradle corrompus, vous pouvez également essayer de fermer le IDE puis de tuer tous les processus Java.
- Le cache de dépendances de Gradle peut être corrompu (cela se produit parfois après un délai de connexion réseau.) Télécharger à nouveau les dépendances et le projet de synchronisation (nécessite un réseau)
- L'état d'un processus de génération Gradle (démon) peut être corrompu. L'arrêt de tous les démons Gradle peut résoudre ce problème. Arrêter les processus de génération Gradle (nécessite un redémarrage)
- Votre projet peut utiliser un plugin tiers qui n'est pas compatible avec les autres plugins du projet ou la version de Gradle demandée par le projet.
J'utilise intellij v 2018.3.4 et je l'ai configuré pour utiliser le wrapper gradle:
Le gradle-wrapper.properties ressemble à ceci:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.0-bin.Zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Si j'exécute le wrapper gradle à partir de la ligne de commande, il n'y a pas de problèmes. Aussi, si je déclenche une tâche gradle (build, clean ...) depuis Intellij, je n'ai aucune erreur.
J'ai un autre problème câblé qui pourrait être lié à celui-ci. Dans mon build.gradle, j'utilise Spring Boot 2.1.7 et si j'exécute mon bocal à partir de la ligne de commande, je peux voir dans la bannière Spring Boot la version configurée 2.1.7. Au lieu de cela, si j'exécute le formulaire de demande Intellij, je vois qu'il utilise Spring Boot 2.0.8, également si j'étends l'arborescence des bibliothèques externes, je vois:
le build.gradle ressemble à:
buildscript {
ext {
springBootVersion = "2.1.7.RELEASE"
springBootDepManagementVersion = "1.0.8.RELEASE"
}
}
plugins {
id 'idea'
id 'Java'
id "io.spring.dependency-management" version "${springBootDepManagementVersion}"
id 'org.springframework.boot' version "${springBootVersion}"
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
....
}
Je vous remercie
Le déclassement fait aussi le travail pour moi:
gradlew wrapper --gradle-version 5.6.4