Nicht unterstützte major.minor-Version 52.0 beim Rendern in Android Studio

106

Wenn ich versuche, eine Layoutvorschau in Android Studio zu rendern, wird folgende Fehlermeldung angezeigt:

Nicht unterstützte major.minor Version 52.0

Ivo Stoyanov
quelle
Sie sollten das Betriebssystem und die Java-Version angeben. Update auf eine neuere Version von Java. Verwenden Sie unter Debian unbedingt Debian Stretch (8.9, Java 8) anstelle von Debian Jessie (8.1, Java 7).
JWW

Antworten:

99

Überprüfen Sie JAVA_HOME, ob Sie jdk 1.8 verwenden möchten

Überprüfen Sie auch: den Parameter in Android Studio, um ihn zu ändern

Datei-> Andere Einstellungen-> Standardprojektstruktur-> SDKs

Fredblabla
quelle
4
Hallo, ich habe die jdk1.8 in der Projektstruktur installiert und "verlinkt" und das Problem tritt immer noch auf
Kotik_o
Ihre Antwort ist nett, aber vielleicht fügen Sie hinzu, dass Sie beim Öffnen der Projektstruktur eine Übersicht über die aktuellen Probleme wie die JDK-Version sehen.
Jobbert
1
Vielen Dank; Nur JDK 8 zu installieren und in der Standardprojektstruktur festzulegen, hat bei mir funktioniert.
Pipedreambomb
1
Unter OSX habe ich JAVA_HOME auf / Applications / Android Studio.app/Contents/jre/jdk/Contents/Home gesetzt und das Problem behoben.
Zhang Buzz
Ich habe festgestellt, dass die Einstellung JAVA_HOMEnicht erforderlich ist, aber die Verwendung File->Project Structureist. Sie können den Wert auch auf "Embedded JDK verwenden" setzen.
ThomasW
70

Dies ist ein Fehler in Android Studio. Normalerweise erhalten Sie eine Fehlermeldung: Nicht unterstützte major.minor Version 52.0

Problemumgehung: Wenn Sie Android N installiert haben, ändern Sie die Android-Rendering-Version durch eine ältere, und das Problem verschwindet.

LÖSUNG: Installieren Sie Android SDK Tools 25.1.3 (Tools) oder höher

Geben Sie hier die Bildbeschreibung ein

Ivo Stoyanov
quelle
Hahaha wie einfach ist das ?? Und hier dachte ich, ich wäre stundenlang recherchiert, um diesen Fehler zu beheben. / Emote Wipes Brow
Jacksonkr
12
Wo ist dieses Vorschaufenster? Der Menüpunkt Mein Ansicht \ Tool Windows \ Vorschau ist deaktiviert.
Lorek
Ich verwende Eclipse 4.5.2 und Android SDK Tools ist 24.4.1 und ADT ist 23.0.7. Ich habe den gleichen Fehler. Wie soll ich das lösen?
Dr.jacky
@ Mr.Hyde Verwenden Sie JDK 1.8?
RM8X
kannst du genauer sein? Wie kann ich das ändern? Welche Befehle?
João Pimentel Ferreira
41

Ich habe alles getan, JAVA_HOME, JAVA8_HOME eingestellt, ... und ich hatte immer den Fehler. Für mich bestand die Lösung darin, die Version 2.1.0 von gradle so einzustellen, dass sie mit Jdk 1.8.0_92 und Android Studio 2.11 funktioniert

dependencies {
    classpath 'com.android.tools.build:gradle:2.1.0'
    //classpath 'com.android.tools.build:gradle:2.+'
}
FeelCode
quelle
1
Ich habe 2 Stunden gegoogelt, um dieses Problem zu lösen. Du hast mein Leben gerettet!
Soohwan Park
JA! Dies löste es auch für mich, keine der anderen vorgeschlagenen Antworten funktionierte. Ich hatte das Problem bei einem Projekt, das einige Monate alt war, und als ich versuchte, es auf einem neuen Computer mit frischem Android Studio zu öffnen.
Mattias Petter Johansson
Das hat bei mir funktioniert danke .. !! Aber warum gab es mir Fehler. Nach dem Klassenpfad habe ich den Klassenpfad 'com.android.tools.build:gradle:2.3.0-alpha2' festgelegt
Parin Parikh
36

Für diejenigen von euch, die sich noch damit auseinandersetzen. Ich habe dieses Problem, nachdem ich auf Android Studio auf 2.1.2 aktualisiert habe. Ich war ungefähr eine Stunde bei diesem Problem festgefahren und habe folgende Lösungen ausprobiert:

  1. multidexEnabled true
  2. Erhöhen des Speichers für Deamon-Thread
  3. Upgrade auf Java 8

Ich habe die Gradle-Skripte überprüft und Folgendes gefunden:

 compileSdkVersion 23
 buildToolsVersion "24.0.0"

gewechselt zu:

compileSdkVersion 23
buildToolsVersion "23.0.3"

Ich weiß nicht, wie dies den Fehler verursacht hat, aber das hat den Trick für mich getan. Bitte lassen Sie mich wissen, wie dies funktioniert hat, wenn Sie die Antwort kennen. Vielen Dank

Karan vs.
quelle
Danke dir. Dies behebt das Problem beim Kompilieren meines Android-Projekts.
stevehs17
Java 8 Upgrade war alles, was ich brauchte
RM8X
28

Nicht unterstützte major.minor Version 52.0

Wenn ein höheres JDK für die Kompilierung verwendet wird, wird eine Klassendatei mit einer höheren Version erstellt. Wenn ein niedrigeres JDK zum Ausführen des Programms verwendet wird, wurde festgestellt, dass eine höhere Version der Klassendatei auf JVM-Ebene nicht unterstützt wird, und führt zu java.lang.UnsupportedClassVersionError.

Wie repariert man

  • Erhöhen Sie die JAVA-Version, mit der Sie Ihr Programm ausführen

Sie können einige Tricks befolgen

  • Rufen Sie den Klassenpfad für stabile Versionen 'com.android.tools.build:gradle:2.1.0' // 2.3.0 auf

Gradle konfigurieren

Geben Sie Folgendes in Ihre build.gradle-Datei auf Modulebene ein, um die Java 8-Sprachfunktionen und Jack für Ihr Projekt zu aktivieren:

android {
  ...
  defaultConfig {
    ...
    jackOptions {
      enabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

Mit freundlicher Genehmigung von Java 8 Language Features

Wählen Sie einfach "API 23: Android 6.0" aus dem Vorschaubereich.

Geben Sie hier die Bildbeschreibung ein

IntelliJ Amiya
quelle
@ Fantasie mein Vergnügen.
IntelliJ Amiya
Ich musste Gradle senken und die Java-Jack-Optionen einbeziehen. Ich verstehe jedoch immer noch nicht, warum der Fehler auftritt und wie er in Zukunft behoben wird. Ich habe alles auf die neuesten Versionen aktualisiert: /
htafoya
25

Wenn dieser Fehler auftritt und Sie gerade auf Android Studio 2.2+ aktualisiert haben, müssen Sie Ihr JDK in den Optionen "Projektstruktur" aktualisieren.

Unter OSX finden Sie dies unter File > Project Structure > SDK. Oder vom Begrüßungsbildschirm inConfigure > Project Defaults > Project Structure .

Wähle aus Use the embedded JDK (recommended) Option aus, anstatt Ihr eigenes JDK zu verwenden.

Die Dokumente von Google wurden noch nicht aktualisiert, um diese Änderung widerzuspiegeln. Siehe: http://tools.android.com/tech-docs/configuration/osx-jdk

Will Vanderhoef
quelle
7

In meinem Fall musste ich die Abhängigkeiten der build.gradleDatei ändern in:

dependencies { 
    classpath 'com.android.tools.build:gradle:2.1.0'
}

(ursprünglich war 2.2.2 ) Ich denke, dies wurde dadurch generiert, dass mehrere Personen im selben Projekt mit verschiedenen Versionen von gradle arbeiteten. Überprüfen Sie also Ihre Gradle-Version und bearbeiten Sie diese Datei ordnungsgemäß.

Gute Stimmung!

Sebastian Corradi
quelle
7

Mit der neuesten Version wird empfohlen, wie im folgenden Bild zum eingebetteten JDK zu wechseln. Dadurch wird Ihr Fehler behoben

Beheben Sie den Fehler major.minor Version 52.0

MatPag
quelle
Ich habe mich nicht um all das Ruckeln mit verschiedenen SDK- und JDK-Versionen gekümmert, die hier empfohlen wurden, aber ich wollte das tun und entdeckte die Option "Eingebettetes JDK verwenden", die funktionierte. Ich wollte diese Lösung veröffentlichen und habe deine gesehen. Dies sollte meiner Meinung nach die richtige Lösung sein.
David Gish
Genau wie @DavidGish hat diese Lösung es geschafft
Jeremy Piednoel
4

Beim Ausführen von ./gradlew makeJar zum Erstellen einer JAR-Bibliothek mit Android Studio 2.2.3 wurde die gleiche Fehlermeldung " Nicht unterstützte major.minor-Version 52.0" angezeigt.

Nachdem die Version des Gradle-Plugins in build.gradle von 2.2.2 auf 2.1.3 heruntergefahren wurde , verschwand die Fehlermeldung und alles funktionierte einwandfrei . Klassenpfad 'com.android.tools.build:gradle: 2.1.3 '

Ich weiß nicht, wie die höhere Version des Gradle-Plugins den Fehler verursacht hat, aber das hat den Trick für mich getan. Bitte lassen Sie mich wissen, wie das funktioniert hat, wenn Sie die Antwort wissen, danke

Paul Y.
quelle
Vielen Dank für den Hinweis auf 2.1.3. es hat mein Problem gelöst!
Artman
4

1 、 Stellen Sie sicher, dass Gradle Gradle JVM Version Geben Sie hier die Bildbeschreibung ein

2 、 stellen Sie sicher Stellen Sie ProjectSettings SDKs Veriosn Geben Sie hier die Bildbeschreibung ein

lingyfh
quelle
3

Für mich hat das Update des Android Studio auf die neueste Version das Problem gelöst.


quelle
3

Ich habe versucht, eine Lösung für dieses Problem zu finden. Ich habe die meisten der in diesem Thread erwähnten Lösungen ausprobiert. Ich bin mir jedoch nicht sicher, warum dies geschah. Wahrscheinlich ein Fehler in Android Studio. Jedenfalls hat dies das Problem gelöst:

In Anwendungsebene build.gradle entfernt:

  classpath 'com.android.tools.build:gradle:2.2.0-beta1'

Ersetzt mit:

classpath 'com.android.tools.build:gradle:2.0.0'
sid_09
quelle
2

Dies liegt an der inkompatiblen Java-Version, die Sie in Android Studio verwenden, und an der Java-Version, die mit Ihrem importierten Projekt verwendet wurde. Gehen Sie zu. File->Project structure->Change jdk 1.7 to jdk 1.8Danach gehen Sie zu File->click on Invalidate cacheund starten Sie neu . Hoffe das hilft..

Und ändern Sie den Abhängigkeitsklassenpfad in der Gradle-Datei

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
Anshul Aggarwal
quelle
1

Der Wechsel zu Java SDK zu Java 8 hat bei mir funktioniert. Android Studio-Einstellungen: Datei -> Andere Einstellungen -> Standardprojektstruktur -> JDK-Speicherort -> jdk1.8.0_71.jdk / Inhalt / Startseite

Meeza
quelle
1

Stellen Sie sicher, dass Sie nach dem Ändern einer Java-Version einen sauberen Build durchführen. Wie sich herausstellt, erledigt Android Studio einige Arbeiten, wenn Sie das JDK wechseln, bereinigt jedoch nicht den Arbeitsbereich und sorgt für Verwirrung¯\_(ツ)_/¯

Alex Styl
quelle
1

Dieser Fehler "Nicht unterstützte major.minor-Version 52.0" bezieht sich auf den Java-Compiler, obwohl die Zeichenfolge "major.minor" dem Android SDK-Versionsformat sehr ähnlich sieht.

Stellen Sie auf der Windows-Plattform neben dem Aktualisieren von jdk auf 1.8 sicher, dass JAVA_HOME darauf verweist, wo Ihr jdk 1.8 installiert ist (dh C: \ Programme \ Java \ jdk1.8.0_91).

irgendwann
quelle
1

Ich musste die Java-Version unter Jenkins-> Jenkins verwalten-> Globale Toolkonfiguration-> JDK auf JDK 8 aktualisieren .

ViliusK
quelle
1

Wechsel zu Java SDK zu Java 8 und arbeitete für mich

Android Studio-Einstellungen:

Datei> Andere Einstellungen> Standardprojektstruktur> JDK-Speicherort> jdk1.8.0_71.jdk / Inhalt / Startseite Geben Sie hier die Bildbeschreibung ein

Uğur KANTEKİN
quelle
Ich habe zuerst die Antwort von @intellij amiya gemacht und musste dies dann tun, damit es tatsächlich funktioniert, danke!
Peter P.
1

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 anhand der PATH-Variablen ermittelt, wo Java installiert ist.

Wenn Sie eine ältere Version von Java auf Ihrem System installiert haben, zeigt Ihre PATH-Variable auf diese ältere Version von Java.

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

Fügen Sie in Ihrer ~ / .bashrc oder entsprechenden Profildatei Folgendes hinzu:

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
0

In meinem Fall ist meine Originalversion Android SDK Build-tools24 und die Andoid SDK ToolsVersion 25.1.7. Ich installiere Android SDK Build-tools version 23.0.3von Andoird SDK Manager.

Ändern Sie diese 2 Zeilen in:

buildToolsVersion "23.0.3" compileSdkVersion 24

Dann funktioniert es!

Fang-Hua Hsu
quelle
0

Laden Sie das neueste JDK herunter und installieren Sie es. Gehen Sie zu VS2015 Tools> Optionen> Xamarin und ändern Sie Java in den neuesten JDK-Speicherort

Marco Duindam
quelle
0

Wenn beim Ausführen des ./gradlewBefehls ein Problem auftritt und Java als Startseite in der gradle.propertiesDatei festgelegt wird, wird das folgende Problem behoben:

org.gradle.java.home=/usr/java/jdk1.8.0_45/

ViliusK
quelle
0

Für mich war das Problem, dass die Version von gradle in build.gradle nicht mit der tatsächlichen Gradle-Version übereinstimmte, die ich installiert hatte.

dependencies { classpath('com.android.tools.build:grade:2.2.0') { force = true}

Überprüfen Sie Ihre installierten Gradle-Versionen unter / Contents / gradle / m2repository / com / android / tools / build / gradle / und ändern Sie die obige build.gradle-Datei mit

classpath('com.android.tools.build:grade:1.5.1') oder <>

Raritätenjewel
quelle
0

Ich hatte den gleichen Fehler und JDK 8 als JAVA_HOME eingestellt. Es stellte sich heraus, dass ich Android SDK Build-Tools Version 25.0.2 installiert hatte. Ich habe dies entfernt und stattdessen 23.0.2 installiert und es hat bei mir funktioniert.

Zela
quelle
-1

Wechseln
Sie in der App-Gradle-Datei zu buildToolsVersion "23.0.2".

Sangram Haladkar
quelle
Das ist kein Grund.
IntelliJ Amiya