Contexte : Après la mise à niveau de la dernière version d'Android Studio, le nouveau projet s'exécute normalement, mais lors de l'exécution de l'ancien projet, une erreur de compilation s'affiche :
Execution failed for task ':EquipCore:compileDebugJavaWithJavac'.
> superclass access check failed: class butterknife.compiler.ButterKnifeProcessor$RScanner (in unnamed module @0x1b1ab21b) cannot access class com.sun.tools.javac.tree.TreeScanner (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.tree to unnamed module @0x1b1ab21b
Cause: superclass access check failed: class butterknife.compiler.ButterKnifeProcessor$RScanner
(in unnamed module @0x1b1ab21b) cannot access class com.sun.tools.javac.tree.TreeScanner (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.tree to unnamed module @0x1b1ab21b
Essayez la solution :
① : Build --> Clean Project ; --> Rebuild Project ;
② : build.gradle : modifiez gradle:version vers la version adaptée ;
③ : Settings -> Gradle -> Gradle JDK sélectionnez la version utilisée auparavant ;
④ : Paramètres -> Gradle -> Gradle JDK --> Télécharger JDK : version Sélectionnez la version précédemment utilisée (la mienne est 11), cliquez sur TÉLÉCHARGER -> Gradle JDK pour sélectionner la version de téléchargement -> APPLIQUER -> OK ; redémarrez et exécutez à nouveau ;
Essayez les solutions ci-dessus une par une et résolvez enfin le problème dans la solution ④.
Analyse de la cause : après la mise à niveau d'Android Studio, les versions de Gradle et du plug-in sont automatiquement mises à niveau. La version de Gradle utilisée dans le projet précédent a été écrasée et le jdk correspondant est introuvable dans le fichier de configuration, ce qui entraîne un échec de la compilation du projet.