Java non pris en charge. Votre build est actuellement configuré pour utiliser Java 17.0.6 et Gradle 6.8.3.
traduire:
Java n'est pas pris en charge. Votre build est actuellement configuré pour utiliser Java 17.0.6 et Gradle 6.8.3.
Cette traduction tue des gens. En fait, ce que je veux exprimer, c'est que la version Gradle ne correspond pas à la version Java, ce qui entraîne un échec de compilation réussie.
Sachant que les versions ne correspondent pas, c'est aussi simple que
Alors maintenant, vous avez deux options :
- Changer la version de Java
- Changer la version graduée
Lequel allons-nous changer ?
Tout d'abord, la plupart de ces situations consistent à importer les projets d'autres personnes. Si vous choisissez de modifier la version Gradle dans le travail d'équipe, une fois le code soumis, vous serez confronté à la situation où tous les membres de l'équipe doivent être mis à niveau en conséquence. Si Environnement Java local d'autres personnes S'il n'est pas pris en charge, l'environnement Java doit être mis à jour
Choisissez donc d'utiliser la première option ici, changez la version de l'environnement Java local
Quelle version de Java faut-il remplacer ? Voici une correspondance
Dans l'environnement de développement Android, la relation correspondante entre la version Gradle et la version Java
Version progressive | Versions JDK prises en charge |
---|---|
6.x | JDK 8, JDK 11 (Gradle 6.7 et versions ultérieures uniquement) |
5.x | JDK 7、JDK 8 |
4.x | JDK 6, JDK 7, JDK 8 |
3.x | JDK 6, JDK 7, JDK 8 |
2.x | JDK 6, JDK 7, JDK 8 |
1 fois | JDK 6、JDK 7 |
La version que nous utilisons ici est Gradle 6.8.3. D'après le tableau, nous pouvons utiliser JDK 8, JDK 11
Lequel utiliser spécifiquement ? Voici un principe :
L'utilisation d'une version Java plus récente peut utiliser davantage de nouvelles fonctionnalités, mais les développeurs doivent maintenir une compatibilité de version élevée. Si certains membres de l'équipe utilisent une version inférieure de Java, il est recommandé d'utiliser une version inférieure de Java, sinon cela entraînera quelques problèmes de compatibilité.
Donc ici, nous utilisons d'abord JDK 8
Si votre environnement fonctionne correctement avec JDK 8, la situation normale s'arrête ici.
Depuis que j'ai utilisé Firebase dans une version étrangère, les problèmes suivants ont été signalés après l'utilisation du JDK 8 :
Causé par : com.google.common.util.concurrent.ExecutionError : java.lang.UnsupportedClassVersionError : com/google/firebase/perf/plugin/FirebasePerfPlugin a été compilé par une version plus récente de Java Runtime (fichier de classe version 55.0) , cette version de Java Runtime ne reconnaît que les versions de fichiers de classe jusqu'à 52.0
Traduction : Cette erreur est due au fait que le plugin Firebase Performance que vous utilisez a été compilé avec Java 11 ou une version ultérieure et que la version de Java avec laquelle vous exécutez le plugin ne prend en charge que les fichiers de classe compilés avec la version 52.0.
Pour résoudre ce problème, vous devez mettre à niveau votre environnement d'exécution Java vers Java 11 ou une version ultérieure.
Mon environnement doit donc utiliser Java 11, et l'environnement est géré ici.
Conseils de configuration de l'environnement
Soit dit en passant, le problème de la configuration de l'environnement Java, la définition des variables d'environnement, etc. peuvent causer des maux de tête à certaines personnes, voici un moyen pratique de recommander
Dans les paramètres d'Android Studio, sélectionnez Télécharger JDK
Sélectionnez la version à télécharger dans la liste JDK et choisissez de l'utiliser une fois le téléchargement terminé.
L'inconvénient est que l'environnement Java n'est pas global et que la fenêtre noire ne peut pas être utilisée, mais l'impact n'est pas grand
Résumer
La clé est de savoir ce qui s’est passé, le résultat précis, puis de connaître les solutions possibles.