Ich versuche mein Android-Projekt zu kompilieren und erhalte diesen Fehler
[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] ------------------------------------------------------------------------
Ich habe in einem anderen Beitrag gelesen, dass der Versuch, mit Java 8 zu kompilieren, diesen Fehler verursachen könnte, aber nicht mein Fall. Ich habe die folgende Java-Version:
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)
Betriebssystem: Linux Mint (Java 8 ist nicht installiert.) Build: MAVEN
Kann mir jemand dabei helfen?
java
android
maven-plugin
Rafael Reyes
quelle
quelle
com/android/dx/command/Main
Antworten:
Ich bin auch mit diesem Problem konfrontiert, wenn ich ein neues Projekt aus Android Studio mache.
Ich konnte dies beheben, indem ich buildToolsVersion in der App-Gradle-Einstellung heruntergestuft habe: change {module-name} /build.gradle line
zu
@Edit: Gehen Sie
in Android Studio 2.1 zu Datei-> Projektstruktur-> App -> Build Tool-Version. Ändern Sie es in 23.0.3
Führen Sie die oben beschriebene Methode nur aus, wenn Sie Java Version 7 verwenden und aus irgendeinem Grund noch kein Upgrade auf Java 8 durchführen möchten.
Hoffe das hilft
quelle
Gradle-Skripte >> build.gradle (Modul-App)
Ändern Sie buildToolsVersion "24.0.0" in buildToolsVersion "23.0.3".
Quelle: Erfahrung
quelle
Anfangs hatte ich ein Downgrade
buildToolsVersion
von24.0.0 rc3
auf durchgeführt23.0.3
, wie in Rudy Kurniawans Antwort angegeben. Dann habe ich festgestellt, dass ich in meinen Projekteinstellungen jdk 7 angegeben habe. Ich habe es in jdk 8 geändert und jetzt24.0.0 rc3
funktionieren Build-Tools .Es ist auch wichtig, dass die Kompilierungsoptionen auf Folgendes eingestellt sind
java7
:quelle
Ich habe Android Studio neben Xamarin Visual Studio installiert (wurde bereits installiert). Nach der Installation (SDK ausgeschlossen, da sie bereits installiert waren) habe ich Android Studio gestartet und fehlende SDKs heruntergeladen, installiert und hinzugefügt (nachdem der Pfad zum SDK-Speicherort angegeben wurde). Als Ergebnis habe ich die Fehlermeldung beim Erstellen erhalten
Als Lösung habe ich
jdk-8u101-windows-i586.exe
ohne JRE installiert (weil es bereits installiert war). Bevor ich die x64-Version ausprobiert habe, ist sie jedoch verschwunden ... Dann müssen Sie den Speicherort des Java Development Kit ändern .Klicken Sie dazu in Visual Studio auf Extras> Optionen> Xamarin> Android-Einstellungen. Hier können Sie zum richtigen Ort navigieren. In meinem Fall war es
C:\Program Files (x86)\Java\jdk1.8.0_101
.Zum Schluss bereinige dein Projekt und erstelle einen neuen Build :-)
quelle
Das angegebene Problem:
wird verursacht, wenn innerhalb von deklariert wird
build.gradle
,buildToolsVersion 24
und wir haben kein Java 8 installiert, das für diese Version erforderlich ist . Um dieses Problem zu lösen, müssen wirbuildToolsVersion
von 24 auf maximal 23 wechseln :Java 8 muss in Zukunft für erforderlich sein
Android Studio
, daher müssen wir Java 8 verwenden.quelle
Ich hatte das gleiche Problem mit meinem IntelliJ Maven Build. Meine "Lösung" bestand darin, in die Build-Tools zu gehen und den Ordner Build-Tools 24.0.0 zu entfernen. Ich habe es im
{android-sdk-location}/build-tools/
Verzeichnis gefunden. Dies ist keine langfristige Lösung, aber dies sollte zumindest dazu führen, dass Ihr Projekt wieder aufgebaut wird. Ein Upgrade auf Java 8, wie viele vorgeschlagen haben, wird langfristig besser sein.quelle
Ich war auch mit diesem Problem konfrontiert, als ich ein neues Projekt in Eclipse erstellte.
Ändern
zu
Hoffe das hilft
quelle
Was hier niemand sagt, ist, dass mit Build Tools 24.0.0 Java 8 erforderlich ist und die meisten Leute entweder 1.6 oder 1.7 haben.
Wenn Sie das Build-Tool auf 23.xx setzen, wird das Problem "gelöst", aber die Hauptursache ist die Java-Version auf Ihrem System.
Langfristig möchten Sie möglicherweise Ihre Entwicklungsumgebung auf JDK8 aktualisieren, um die neuen Sprachverbesserungen und den Jack-Compiler nutzen zu können.
quelle
52 ist der Code für JDK 8. Sie können dies hier sehen: http://javarevisited.blogspot.com/2015/05/fixing-unsupported-majorminor-version.html . Daher erwartet Gradle, dass Sie JDK 8 als Standard-Java-Version auf Ihrem Computer haben. Neueste Versionen von Gradle für Android funktionieren nicht mit Java 7.
Die Lösung ist einfach: Machen Sie Java 8 zur Standard-JDK-Version auf Ihrem Computer.
quelle
1.8
.Ich bin auf Android Studio 2.0 und habe das gleiche Problem. Die von Rudy Kurniawan bereitgestellte Lösung hat dieses Problem gelöst. Die betroffene Datei kann gefunden werden durch:
"Projekt" -> "Android" -> "Gradle Scripts" -> "build.gradle (Modul: App)"
Der Bereich " Projekt " ist standardmäßig links. Um es zu finden, überprüfen Sie den Namen der seitlichen Registerkarten, klicken Sie darauf und verwenden Sie das obere Pulldown-Feld, um zu " Android " zu gelangen. Erweitern Sie den Baum im Bereich, um die Zieldatei zu finden. Doppelklicken Sie zum Bearbeiten darauf.
quelle
Entschuldigung für die späte Antwort. Ich hoffe, es hilft jemand anderem
Dieses Problem hängt mit Ihrem SDK zusammen, nicht mit Ihrem JDK. Sie können Ihre Versionsinformationen von überprüfen
Sie werden so etwas bekommen
Wenn Sie Vorschau-Tools zum Erstellen verwenden, werden überall ähnliche Fehler angezeigt.
Was nun?
gehe zu
Wählen Sie alle Elemente in Vorschau-Kanälen aus, einschließlich
Android SDK build tools
mit rev24rc2
oder24rc4
(spätestens)Klicke auf
Delete 'n' packages
So deaktivieren Sie den Vorschau-Kanal
Wählen Sie im SDK-Manager
Deaktivieren Sie
Enable preview tools
Und was
Zurück zu Ihrem Code Alle bereinigen und neu erstellen (In seltenen Fällen müssen Sie Build-Tools auf der Seite mit den Projekteinstellungen auswählen.)
quelle
Vielen Dank an alle für die Lösung.
Ich könnte das gleiche Problem mit der folgenden Lösung lösen.
In meinem Projekt habe ich jar hinzugefügt, die in Java8 erstellt wurden. Und mein Projekt bezog sich auf JRE 7. Als ich das Projekt JRE auf 8 änderte, war mein Problem gelöst.
Schritte: Klicken Sie in Eclipse im Projektexplorer mit der rechten Maustaste auf den Projektnamen> Erstellungspfad> Bibliotheken> Klicken Sie auf JRE-Version> Klicken Sie auf Bearbeiten> Installierte JRE> Hinzufügen> Standard-VM> Wählen Sie JRE-Home-Klickpfad (Pfad sollte localePath \ java \ jdk1 sein .8.0_25 \ jre)> Name angeben> Speichern> Gleiche JRE für Projekt auswählen> Fertig stellen> OK Projekt einmal aktualisieren / erstellen> Versuchen Sie, Ihre Java-Datei auszuführen. es sollte funktionieren.
quelle
Diese Fehlermeldung auf dem Travis Build Server erhalten?
Ich reparierte mein travis Build mit buildToolsVersion „24.0.2“ mit diesem
quelle
In meinem Fall war das Standard-JDK 1.7, dann habe ich es in 1.8 geändert, indem ich zu dem genauen Ordner navigiert habe, in dem sich das aktualisierte JDK befindet.
quelle
Ich hatte das gleiche Problem und habe versucht, die Version zu ändern. Manchmal können Sie für die Version von Android Studio unter Projekt> Gradle-Skripte> build.gradle (Modul: App) die Version ändern. Beispielsweise:
quelle
Aus dieser Frage.
Sie können versuchen, Ihre Compiler-Ebene in der von Ihnen verwendeten IDE wieder auf 1,7 zu ändern.
Wenn Sie mit Android Studio arbeiten, können Sie dies zu Ihrem build.gradle hinzufügen
Wenn dies nicht hilft, überprüfen Sie die Antwort anderer unter dem oben genannten Link und teilen Sie uns mit, was Ihnen geholfen hat.
quelle
Ihre Android-Build-Tools sind nicht ordnungsgemäß installiert. Versuchen Sie, eine andere Version der Build-Tools zu installieren, und geben Sie diese Version in der Gradle-Datei an. oder Sie können in dieses Verzeichnis gehen
C: \ Benutzer \\ AppData \ Local \ Android \ sdk \ build-tools
und sehen Sie, welche Build-Tools installiert sind. Versuchen Sie, die Version des Build-Tools in der Gradle-Datei zu ändern, und kompilieren Sie die App, um festzustellen, ob sie funktioniert.
Ich hatte 22.0.1.23.0.02 und 24.0.0 Versionen von Build-Tools und nur die alte 22.0.1-Version funktionierte.
Quelle: Ich habe es selbst versucht und es hat bei mir funktioniert.
quelle
Dieses Problem ist darauf zurückzuführen, dass Ihre Build-Tool-Version und JDK nicht zusammenarbeiten. Ich habe JDK Version 7 mit dem Build-Tool 24.0.1 verwendet. Natürlich kann das Problem durch Verringern der Build-Tool-Version behoben werden, dies ist jedoch keine echte Lösung, da ein zukünftiges Upgrade Ihrer Build-Tools das Problem erneut beheben wird.
Sie sollten sicherstellen, dass Build-Tool-Version und JDK zusammenarbeiten. Ich habe mein Build-Tool auf den neuesten Stand (24.0.1) aktualisiert und jdk8 installiert. Stellen Sie sicher, dass JAVA_HOME auf den neuesten Stand gebracht ist, und versuchen Sie dann, einen sauberen Build zu erstellen.
quelle
Habe das gleiche Problem außerhalb von Android Studio, als ich versuchte, mit dem SDK über die Befehlszeile (Cordova Build Android) für Cordova zu erstellen.
Die von Rudy bereitgestellte Lösung funktioniert auch in diesem Fall. Sie führen kein Downgrade der Version von Build Tools von Android Studio durch, sondern verwenden die Android SDK Manager-Benutzeroberfläche.
quelle
Ich bin gerade auf dieses Problem gestoßen.
Das Zurücksetzen von den "Preview Channel" -Versionen der SDK-Tools und Build-Tools auf die neueste stabile Version hat das Problem behoben.
quelle
Wechseln
com.android.tools.build:gradle:2.2.0-beta1
zucom.android.tools.build:gradle:2.1.2
es für mich zu beheben.Meine Android Studio-Version ist 2.1.2, vielleicht deshalb
quelle
Die einfachste Lösung besteht darin, dass Sie Ihr JDK auf die neueste Version aktualisieren müssen. Weil Cordova nur das neueste JDK unterstützt.
1 . Zunächst müssen Sie Ihr Android SDK aktualisieren. Dann,
2. Wenn Sie nicht über Ihr Terminal aktualisieren können, gehen Sie zu Ihrem Software-Center von Linux und suchen Sie nach dem neuesten (welches Sie installieren möchten) und installieren Sie dieses.
Führen Sie dann erneut Cordova Build aus .
Es wird das Problem lösen.
In meinem Fall hat es funktioniert.
quelle
Sie müssen in Ihr SDK-Installationsverzeichnis wechseln und sicherstellen, dass das Unterverzeichnis / build-tools mit dem
buildToolsVersion
in der build.gradle-Datei Ihrer App übereinstimmt:quelle
Überprüfen Sie, ob Sie die neueste Version des SDK in
C:\Program Files\Java
oder installiert habenC:\Program Files (x86)\Java
Gehen Sie dann zu VS2015 und folgen Sie den Pfadwerkzeugen - Optionen - Xamarin - Android-Einstellungen. Wählen Sie im Abschnitt JDK-Speicherort die Option Ändern aus und suchen Sie nach der Version, für die Sie entweder x64 oder x32 haben.
quelle
Ich bin auf Cordova, hier ist was ich getan habe:
- Benennen Sie Ihr Android - Projekt, so dass es Platz für neue
- Update Java Development Kit 1.8 (spätestens eine in der Zeit der Abfassung dieses)
- run
cordova platform add android
Sollte jetzt ohne Probleme funktionieren. Ihr App-Hash ändert sich. Wenn Sie ihn beispielsweise für die Facbeook-Anmeldung verwenden, müssen Sie ihn aktualisieren
quelle
Ich hatte dieses Problem zu lange (SO usw. hatte nicht geholfen) und es gerade erst gelöst (mit SDK 25).
-Die Datei local.properties proguard.dir var wurde nicht mit ant angewendet. Ich hatte 5.3.2 angegeben, aber ein Befehlszeilenaufruf und ein signierter Export-Build (Eclipse) verwendeten 4.7 aus dem SDK-Verzeichnis (nur 5+ unterstützen Java 8).
Meine Lösung bestand darin, die Proguard-Jars (Verzeichnis android-sdk / tools / proguard / libs) im SDK durch eine aktuelle (5+) Version von Proguard zu ersetzen.
quelle
Der Fehler "Nicht unterstützte Major-Minor-Version" kann auf eine nicht unterstützte JDK-Version zurückzuführen sein. Aktualisieren Sie das JDK, gehen Sie zu den Moduleinstellungen und ändern Sie den JDK-Pfad in den neuen. In den meisten Fällen wird der Fehler behoben.
quelle
Ich hatte zwei Versionen von Java JDK installiert. Nachdem ich unter Datei-> Projektstruktur -> SDK-Speicherort auf die richtige Version von Java JDK auf die neueste Version in der Umgebungsvariablen JAVA_HOME verwiesen hatte, verschwand das Problem.
quelle