Android Studio erhält weiterhin eine nicht unterstützte major.minor-Version 52.0

74

Nachdem ich mein Projekt mit einigen Änderungen von anderen Entwicklern zusammengeführt habe, erhalte ich weiterhin Folgendes:

Error:Cause: com/android/build/gradle/internal/model/DefaultAndroidProject : Unsupported major.minor version 52.0

Ich habe versucht, Java 8 zu installieren und mein Projekt auf Java 8 einzustellen. Wenn ich mein JAVA_HOME in der Befehlszeile auf 1.8 ändere und mit gradle kompiliere, funktioniert es. Wenn ich versuche, JAVA_HOME auf 1.7 zu setzen und zu gradeln, schlägt dies mit demselben Fehler fehl.

In Android Studio wird dieser Fehler jedoch unabhängig von der JDK-Version weiterhin gedruckt.

Andere Entwickler sagen, dass sie Java 7 ohne Probleme verwenden. Andere Dinge, die ich versucht habe:

gradle clean build
gradlew clean build
Reinstalling Android Studio

Ein weiteres interessantes Symptom ist, dass andere Projekte in Android Studio vollkommen zufrieden sind. Es ist nur dieses Projekt, das dieses Problem hat.

Hier sind meine Umgebungseinstellungen:

OS: Mac OS X 10.9.5
Android Studio: 2.1.1
Android Studio JVM: 1.6
Project JVM: 1.7.0_75
Android SDK (Build Tools): 23.0.2
Gradle: 2.13
JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home
ANDROID_HOME: /Users/me/Library/Android/sdk

Ich vermute, dass es etwas mit dem Gradle-Wrapper zu tun hat, aber ich kann nicht herausfinden, wie man Graddle-Wrapper dazu bringt, sich mit 1.7 neu zu initialisieren.

Chubbsondubs
quelle
Bitte überprüfen Sie meine Antwort (SebastianCorradi) hier: stackoverflow.com/a/40891189/3703091
Sebastian Corradi

Antworten:

77

Versuchen Sie Menü File - > Invalidate caches and restart. Stellen Sie außerdem sicher, dass die Gradle-Plugins auf dem neuesten Stand sind:

classpath 'com.android.tools.build:gradle:2.1.0'
Stepan Maksymov
quelle
6
Während der Ungültigmachung hat der Cache dies nicht getan. Es war die Gradle-Version der Build-Tools, die überarbeitet wurde. Es wurde auf 2.2.0-alpha1 eingestellt, und als ich es auf 2.1.0 zurückgesetzt hatte, schien es wieder glücklich zu sein! Danke für Ihre Hilfe.
Chubbsondubs
1
setze Klassenpfad 'com.android.tools.build:gradle:2.1.3', es ist Arbeit.
Qinmiao
1
Ich habe den Klassenpfad 'com.android.tools.build:gradle:2.2.0' hinzugefügt, erhalte aber immer noch den Fehler: (1, 0) Ursache: com / android / build / gradle / AppPlugin: Nicht unterstützte major.minor-Version 52.0
Ashish Jain
2
@Stepan Maksymov: Ich habe Android Studio der Version 2.3 und mein Klassenpfad ist classpath 'com.android.tools.build:gradle:2.3.0'Aber ich bekomme immer noch Fehler. Fehler: (1, 1) Beim Auswerten des Projekts ': app' ist ein Problem aufgetreten. > java.lang.UnsupportedClassVersionError: com / android / build / gradle / AppPlugin: Nicht unterstützte major.minor-Version 52.0 Können Sie mir bitte sagen, was genau das Problem in meinem Projekt ist?
BK19
3
Wo soll diese Zeile hinzugefügt werden?
Abhishek
60

Stellen Sie Ihr JAVA_HOME so ein, dass es jdk 1.8 verwendet.

Überprüfen Sie auch Ihren SDK-Speicherort in Android Studio:

Datei-> Andere Einstellungen-> Standardprojektstruktur-> SDKs

Geben Sie hier die Bildbeschreibung ein

Entreco
quelle
Ja, Sie sollten versuchen, JAVA_HOME so zu aktualisieren, dass es auf den JDK 8-Speicherort verweist. In meinem Fall habe ich die SDK-Einstellungen des Android Studio-Projekts aktualisiert und die Java-Version in meiner PATH env-Variablen geändert. Dieser Fehler ist jedoch weiterhin aufgetreten. Nur das Aktualisieren von JAVA_HOME hat mir geholfen.
Vadim Kotov
Vergessen Sie nach dem Upgrade von Java1.7 auf Java1.8 nicht, Android Studio zu informieren ... das ist mein Fall.
Wei WANG
Guter Gott, ist das jemals begraben? Ich hatte meine Systemumgebungsvariablen geändert und JAVA_HOME im Menü Android Studio Datei-> Einstellungen überschrieben, aber hier lag das Problem.
ArtHare
Ich habe das "Embedded JDK verwenden" gewählt und es hat funktioniert. Vielen Dank
Pontios
30

Das hat mich dazu gebracht, an meinem MAC zu arbeiten:

Gehe zu >> Datei> Projektstruktur ...> SDK-Speicherort (in der linken Spalte)> Abschnitt JDK-Speicherort: Überprüfen Use embedded JDK (recommended)

Geben Sie hier die Bildbeschreibung ein

thatzprem
quelle
1
Ich habe ein Upgrade von einem alten Android Studio auf Android Studio 2.3.2 durchgeführt. Habe die Fehler. Es stellte sich heraus, dass der JDK-Speicherort auf eine benutzerdefinierte JDK 1.7-Installation zeigte. Stellen Sie "Embedded JDK verwenden" ein und das Problem ist behoben.
Alexander van Oostenrijk
Ich auch für Android Studio 3.0. Ich verstehe nicht, warum es nicht die Standardeinstellung ist, wenn Sie Android Studio installieren ...
Mike Gold
Dies ist die Lösung, die Sie nach Freunden suchen. Vielen Dank.
Henrik Petterson
15

Fix für mich war

1) Aktualisiere Android Studio auf den neuesten Stand (2.2 ab sofort)

2) Installieren Sie das SDK 24

Sourabh Saldi
quelle
1
Dies hat das Problem behoben
mythicalcoder
12

Versuchen Sie, die Umgebungsvariable STUDIO_JDK festzulegen. Was für mich funktioniert hat ist:

launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_76.jdk

Ersetzen Sie 1.8.0_76 natürlich durch die von Ihnen installierte Version von JDK 8. Ich war faul und habe mir nicht die Zeit genommen, den richtigen Weg zu finden, damit dies bei Neustarts funktioniert (das muss ich normalerweise nur bei jedem Neustart ausführen), aber das sollte den Trick für Sie tun.

Kevin Coppock
quelle
Dies wäre wahrscheinlich die Lösung, wenn ich auf Gradle 2.2.0-alpha1 bleiben muss. Vielen Dank für den Vorschlag.
Chubbsondubs
7

Wenn dieser Fehler auftritt, müssen Sie Ihr JDK in den Optionen "Projektstruktur" aktualisieren.

Dies finden Sie unter Datei> Projektstruktur> SDK. Oder über den Begrüßungsbildschirm unter Konfigurieren> Projektstandards> Projektstruktur.

Wählen Sie die Option Eingebettetes JDK verwenden (empfohlen), anstatt Ihr eigenes JDK zu verwenden.

Fawad
quelle
5

Öffnen Sie die Datei "/ Application / Android Studio / Contents / info.plist" und suchen Sie den Schlüssel "JVMVersion". Ersetzen Sie ihn durch 1.8.x (dies ist Ihre Java-Version. Bevor Sie dies tun, sollten Sie JDK 1.8.x oder höher installieren.)

gaillysu
quelle
Der Speicherort auf dem Mac war / Applications / Android \ Studio.app/Contents/Info.plist, wurde durch den folgenden ersetzt und funktionierte: <key> JVMVersion </ key> <string> 1.8 * </ string>
Yuntao
5

Was schließlich für mich funktionierte, war die Einstellung der Gradle-JVM-Einstellung.

Gehen Sie auf dem Mac zu

Einstellungen -> Erstellen, Ausführen, Bereitstellen -> Erstellen von Tools -> Gradle

Stellen Sie die Gradle JVM-Dropdown-Liste auf Java 1.8 ein. Meins wurde auf 1,7 eingestellt.

Hinweis: Ich habe auch die von Entreco veröffentlichte Änderung des SDK-Speicherorts vorgenommen, aber die Umgebungsvariable JAVA_HOME NICHT festgelegt.

Sanj
quelle
3

Versuchen Sie Datei -> Projektstruktur -> SDK-Speicherort

Ich hatte das gleiche Problem, weil gradle mein altes JDK verwendete.

Adil Aliyev
quelle
3

Überprüfen Sie Ihren SDK-Speicherort in Android Studio:

Datei-> Projektstruktur-> SDK-Speicherort

Legen Sie den JDK-Speicherort fest: / Applications / Android Studio.app/Contents/jre/jdk/Contents/Home

Geben Sie hier die Bildbeschreibung ein

Zhou Kalicy
quelle
2

Überprüfen Sie den Speicherort Ihres Project SDK, wenn es sich um JAVA 1.8 handelt

Dann sollten Sie vielleicht auch Ihre Project Gradle JVM-Einstellung überprüfen

Eisen
quelle
1

Ich hatte auch dieses Problem. Es wurde behoben, als ich mein JDK aktualisierte und den Speicherort des JDK in Android auf die neueste Version änderte.

Datei-> Andere Einstellungen-> Standardprojektstruktur-> JDK-Speicherort (Änderung auf die neueste Version, meine wird nach dem Wechsel zu jdk1.8.0_92 behoben)

Mufasil Faizal
quelle
0

Zielen Sie auf N? Dafür müssen Sie Java 8 verwenden.

Tyler Pfaff
quelle
0

Verwenden Sie Gradle nicht mit der Alpha-Version

Mao
quelle
0

Es kann zwei Hauptgründe für dieses Problem geben.

  1. Java-Versionsproblem

Überprüfen Sie die kompatible Java-Version und aktualisieren Sie das JDK Ihrer Entwicklungsumgebung auf dieselbe Version.

  1. Gradle-Version Problem

Dies ist im Grunde das Problem in der Gradle-Version. Bitte überprüfen Sie, ob die Gradle-Version des Projekts der Gradle-Version entspricht, die Sie in Ihrer Entwicklungsumgebung verwenden

Chinthaka Dinadasa
quelle
0

Dieses Problem tritt auf, wenn Sie Ihr Projekt auf einen anderen Computer übertragen und der installierte google.play.service nicht gleich ist. Die Problemumgehung besteht darin, die Überprüfung der Google Play-Dienste aus dem Fenster der SDK-Tools zu entfernen, Ihr Android Studio zu aktualisieren und zurückzusetzen und dann herunterzuladen und Installieren Sie sie über das SDK-Manager-Tool neu

Hamid Jolany
quelle
0

Ich hatte vor einiger Zeit das gleiche Problem. Es wurde tatsächlich durch einen falschen Pfad in den Einstellungen verursacht! Da nach dem Update AndroidStudio 2.3installiert sich auf C:\Program Files\Android\Android Studio1und der Pfad wurde auf C:\Program Files\Android\Android Studio\gradle\gradle-2.10anstelle von gesetztC:\Program Files\Android\Android Studio1\gradle\gradle-2.10

Wirklich ein dummes Problem, aber zum Glück mit einer einfachen Lösung.)

Lukáš Zelenka
quelle
0

Android Studio verhält sich in diesem Fall komisch. Obwohl Sie die JDK-Version unter Datei -> Projektstruktur -> SDK-Speicherort festlegen, verwendet Android Studio diese nur zum Kompilieren der Dateien. Wenn diese Dateien ausgeführt werden, wird aus irgendeinem Grund die systemweit installierte Java-Version verwendet, dh in usr / local / bin.

Sie müssen also Ihre Pfadvariable so einstellen, dass sie auf dieselbe Java-Version verweist, die in Ihren Android Studio-Projekteinstellungen festgelegt wurde.

export PATH = "/ Applications / studio.app / Contents / jre / jdk / Contents / Home / bin: $ PATH"

In meinem Fall war mein Projekt für die Verwendung von Java 1.8 konfiguriert, aber meine systemweite Installation von Java war Java 1.7. Dies verursachte das Problem.

user3282666
quelle