J'essaye de compiler mon projet Android et j'obtiens cette erreur
[INFO] Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
[INFO] at java.lang.ClassLoader.defineClass1(Native Method)
[INFO] at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
[INFO] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
[INFO] at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
[INFO] at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
[INFO] at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
[INFO] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
[INFO] at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
[INFO] at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
J'ai lu dans un autre article que tenter de compiler avec Java 8 pourrait causer cette erreur mais pas mon cas, j'ai la version Java suivante:
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-0ubuntu0.14.04.2)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)
OS: Linux Mint (Je n'ai pas installé Java 8.) Build: MAVEN
Est-ce que quelqu'un peut m'aider avec ça?
java
android
maven-plugin
Rafael Reyes
la source
la source
com/android/dx/command/Main
Réponses:
Je suis également confronté à ce problème lors de la création d'un nouveau projet à partir d'Android Studio.
J'ai pu résoudre ce problème en rétrogradant buildToolsVersion dans le paramètre de gradle de l'application: changez la ligne {module-name} /build.gradle
à
@Edit:
Dans Android Studio 2.1, accédez à Fichier-> Structure du projet- > Application -> Version de l'outil de création. Changez-le en 23.0.3
Suivez la méthode ci-dessus, uniquement lorsque vous utilisez la version 7 de java et que pour une raison quelconque, vous ne souhaitez pas encore mettre à niveau vers java 8.
J'espère que cela t'aides
la source
Gradle Scripts >> build.gradle (application de module)
Remplacez buildToolsVersion "24.0.0" par buildToolsVersion "23.0.3"
source: expérience
la source
Au départ, j'avais rétrogradé
buildToolsVersion
de24.0.0 rc3
à23.0.3
, comme spécifié dans la réponse de Rudy Kurniawan. Ensuite, j'ai remarqué que jdk 7 était spécifié dans les paramètres de mon projet. Je l'ai changé en jdk 8 et maintenant les outils de construction24.0.0 rc3
fonctionnent.Il est également important que les options de compilation soient définies sur
java7
:la source
J'ai installé Android Studio avec Xamarin Visual Studio (était déjà installé). Après l'installation (à l'exclusion du SDK, car ils étaient déjà installés), j'ai démarré Android Studio et il a téléchargé, installé et ajouté les SDK manquants (après avoir indiqué le chemin d'accès à l'emplacement du SDK). En conséquence, j'ai reçu le message d'erreur lors de la construction
En tant que solution, j'ai installé
jdk-8u101-windows-i586.exe
sans JRE (car il était déjà installé). Avant, j'ai essayé la version x64, mais elle a disparu ... Ensuite, vous devez changer l' emplacement du kit de développement Java .Cela se fait dans Visual Studio en cliquant sur Outils> Options> Xamarin> Paramètres Android. Ici, vous pouvez naviguer vers l'emplacement correct. Dans mon cas, c'était le cas
C:\Program Files (x86)\Java\jdk1.8.0_101
.Enfin, nettoyez votre projet et faites une nouvelle compilation :-)
la source
Le problème a précisé:
est causé lorsque est déclaré dans le
build.gradle
,buildToolsVersion 24
et nous n'avons pas installé Java 8 qui est requis pour cette version . Pour résoudre ce problème, nous devons passerbuildToolsVersion
de 24 au maximum 23:Java 8 doit être requis à l'avenir pour
Android Studio
, nous devons donc commencer à utiliser Java 8.la source
J'ai eu le même problème avec ma version IntelliJ Maven. Ma «solution» était d'aller dans les outils de construction et de supprimer le dossier des outils de construction 24.0.0. Je l'ai trouvé dans l'
{android-sdk-location}/build-tools/
annuaire. Ce n'est pas une solution à long terme, mais cela devrait au moins relancer la construction de votre projet. La mise à niveau vers Java 8, comme beaucoup l'ont suggéré, sera meilleure à long terme.la source
J'ai également rencontré ce problème lors de la réalisation d'un nouveau projet dans eclipse.
Modifier
à
J'espère que cela t'aides
la source
Ce que personne ne dit ici, c'est qu'avec Build Tools 24.0.0, Java 8 est requis et la plupart des gens ont 1.6 ou 1.7.
Donc oui, définir l'outil de construction sur 23.xx «résoudrait» le problème, mais la cause première est la version Java de votre système.
À long terme, vous souhaiterez peut-être mettre à niveau votre environnement de développement pour utiliser JDK8 afin d'utiliser les nouvelles améliorations du langage et le compilateur jack.
la source
52 est le code pour JDK 8. Vous pouvez le voir ici: http://javarevisited.blogspot.com/2015/05/fixing-unsupported-majorminor-version.html . Gradle s'attend donc à ce que vous ayez JDK 8 comme version Java par défaut sur votre machine. Les dernières versions de Gradle pour Android ne fonctionneront pas avec Java 7.
La solution est simple: faites de Java 8 la version jdk par défaut sur votre machine.
la source
1.8
.Je suis sur Android Studio 2.0 et je suis confronté au même problème. La solution fournie par Rudy Kurniawan a résolu ce problème. Le fichier concerné peut être localisé par:
"Projet" -> "Android" -> "Scripts Gradle" -> "build.gradle (Module: app)"
Le volet " Projet " est par défaut sur la gauche. Pour le trouver, inspectez le nom des onglets latéraux, cliquez dessus, puis utilisez le menu déroulant du haut pour accéder à " Android ". Développez l'arborescence dans le volet pour trouver le fichier cible. Double-cliquez dessus pour le modifier.
la source
Désolé pour la réponse tardive, j'espère que cela aide quelqu'un d'autre
Ce problème est lié à votre SDK, pas à votre JDK. Vous pouvez vérifier vos informations de version à partir de
Vous obtiendrez quelque chose comme
Si vous utilisez des outils de prévisualisation pour la construction, vous obtiendrez des erreurs similaires partout.
Que faire maintenant?
aller à
Sélectionnez tous les éléments dans les canaux de prévisualisation, y compris
Android SDK build tools
avec rev24rc2
ou24rc4
(dernier)Cliquer sur
Delete 'n' packages
Comment désactiver la chaîne de prévisualisation
Dans le gestionnaire de SDK, sélectionnez
Décocher
Enable preview tools
Et quoi
Retour à votre code Nettoyer tout et reconstruire (dans de rares cas, vous devez sélectionner les outils de construction dans la page des paramètres du projet)
la source
Merci à tous pour la solution.
Je pourrais résoudre mon même problème en utilisant la solution ci-dessous.
Dans mon projet, j'ai ajouté des jar qui ont été créés en Java8. Et mon projet faisait référence à JRE 7. Quand j'ai changé le projet JRE en 8. Mon problème a été résolu.
Étapes: Dans eclipse, cliquez avec le bouton droit sur le nom du projet dans l'explorateur de projet> chemin de construction> Bibliothèques> cliquez sur la version jre> cliquez sur modifier> JRE installé> ajouter> VM standerd> sélectionnez le chemin de clic de la maison JRE (le chemin doit être localePath \ java \ jdk1 .8.0_25 \ jre)> fournir un nom> enregistrer> sélectionner le même JRE pour le projet> terminer> ok Actualiser / construire le projet une fois> essayez d'exécuter votre fichier java. ça devrait marcher.
la source
Obtenez ce message d'erreur sur le serveur de construction de travis?
Je fixe mon travis construire avec buildToolsVersion « 24.0.2 » en utilisant cette
la source
Dans mon cas, le jdk par défaut était 1.7, puis je l'ai changé en 1.8 en naviguant jusqu'au dossier exact où se trouve le jdk mis à jour.
la source
J'ai eu le même problème et j'ai essayé de changer la version, c'est parfois pour la version d'Android Studio dans Project> Gradle Scripts> build.gradle (Module: app), vous pouvez changer la version. Par exemple:
la source
De cette question.
Vous pouvez essayer de modifier le niveau de votre compilateur à 1.7 dans l'EDI que vous utilisez.
Si vous utilisez Android Studio, vous pouvez l'ajouter à votre build.gradle
Si cela ne vous aide pas, essayez de vérifier la réponse des autres dans le lien mentionné ci-dessus et dites-nous ce qui vous a aidé.
la source
Vos outils de build Android ne sont pas correctement installés. Essayez d'installer une autre version des outils de compilation et indiquez cette version dans le fichier gradle. ou vous pouvez aller dans ce répertoire
C: \ Users \\ AppData \ Local \ Android \ sdk \ build-tools
et voyez quels outils de construction sont installés. Essayez de changer la version de l'outil de construction dans le fichier gradle et compilez l'application pour voir si cela fonctionne.
J'avais les versions 22.0.1, 23.0.02 et 24.0.0 des outils de construction et seule l'ancienne version 22.0.1 fonctionnait.
source: je l'ai essayé moi-même et cela a fonctionné pour moi.
la source
Ce problème provient du fait que la version de votre outil de construction et JDK ne fonctionneront pas ensemble. J'utilisais JDK version 7 avec l'outil de construction 24.0.1. Bien sûr, la réduction de la version de l'outil de construction peut résoudre le problème, mais ce n'est pas une vraie solution, car la mise à niveau de vos outils de construction à l'avenir le résoudra à nouveau.
Vous devez vous assurer que la version de l'outil de construction et JDK fonctionnent ensemble. J'ai mis à niveau mon outil de construction vers le dernier (24.0.1) et installé jdk8. Assurez-vous de définir votre JAVA_HOME sur la dernière version, puis essayez une nouvelle version.
la source
Vous avez le même problème en dehors d'Android Studio, lorsque vous essayez de construire pour Cordova en utilisant le sdk à partir de la ligne de commande (cordova build android).
La solution fournie par Rudy fonctionne également dans ce cas. Vous ne rétrogradez tout simplement pas la version de Build Tools d'Android Studio, mais vous le faites à l'aide de l'interface utilisateur du gestionnaire de sdk android.
la source
Je viens de rencontrer ce problème.
Le retour des versions "Preview Channel" des outils SDK et des outils de construction à la dernière version stable a corrigé le problème.
la source
Changer
com.android.tools.build:gradle:2.2.0-beta1
pour lecom.android.tools.build:gradle:2.1.2
réparer pour moi.Ma version Android Studio est 2.1.2, c'est peut-être pourquoi
la source
La solution la plus simple est que vous devez mettre à jour votre JDK vers la dernière version. Parce que Cordova ne prend en charge que le dernier JDK.
1 . Tout d'abord, vous devez mettre à jour votre SDK Android. Ensuite,
2. Si vous ne parvenez pas à mettre à jour via votre terminal, accédez à votre centre logiciel de destruction Linux et recherchez le dernier (celui que vous souhaitez installer) et installez celui-ci.
Ensuite, exécutez à nouveau Cordova build .
Cela résoudra le problème.
Dans mon cas, cela a fonctionné.
la source
Vous devez aller dans le répertoire d'installation de votre SDK et vous assurer que le sous-répertoire / build-tools correspond
buildToolsVersion
à celui du fichier build.gradle de votre application:la source
Vérifiez que la dernière version du SDK est installée dans
C:\Program Files\Java
ouC:\Program Files (x86)\Java
Ensuite, allez dans VS2015 et suivez le chemin outils - options - Xamarin - Paramètres Android et dans la section Emplacement du JDK, sélectionnez le changement et recherchez la version que vous avez soit x64 ou x32.
la source
Je suis sur cordova, voici ce que j'ai fait:
- renommez votre projet Android, afin qu'il y ait de la place pour un nouveau
- mettez à jour le kit de développement JAVA vers 1.8 (le dernier au moment de la rédaction de ceci)
- exécutez
cordova platform add android
Devrait fonctionner sans problèmes maintenant. Le hachage de votre application changera, donc si vous l'utilisez pour la connexion à facbeook, vous devrez le mettre à jour
la source
J'avais ce problème depuis trop longtemps (SO, etc. n'avait pas aidé) et je venais de le résoudre (en utilisant sdk 25).
-Le fichier local.properties proguard.dir var ne s'appliquait pas avec ant; J'avais spécifié 5.3.2, mais un appel de ligne de commande et une construction d'exportation signée (eclipse) utilisaient 4.7, à partir du dir sdk (seulement 5+ prend en charge java 8)
Ma solution était de remplacer les jars proguard (répertoire android-sdk / tools / proguard / libs) dans le sdk par une version actuelle (5+) de proguard.
la source
Une erreur de version majeure non prise en charge peut être due à une version JDK non prise en charge. Mettez à jour le JDK, accédez aux paramètres du module et remplacez le chemin JDK par le nouveau. Dans la plupart des cas, il corrige l'erreur.
la source
J'ai installé deux versions de java jdk. Une fois que j'ai indiqué la bonne version de java jdk dans File-> Project Structure -> SDK Location vers la dernière version que j'avais dans la variable d'environnement JAVA_HOME, le problème a disparu.
la source