Неподдерживаемая версия major.minor 52.0 при рендеринге в Android Studio


106

Когда я пытаюсь выполнить предварительный просмотр макета в Android Studio, я получаю сообщение об ошибке:

Неподдерживаемая версия major.minor 52.0


Вы должны указать операционную систему и версию Java. Обновитесь до более новой версии Java. Если вы используете Debian, обязательно используйте Debian Stretch (8.9, Java 8) вместо Debian Jessie (8.1, Java 7).
jww

Ответы:


99

Убедитесь, что вы JAVA_HOMEиспользуете jdk 1.8

Также проверьте: параметр в Android Studio, чтобы изменить его на

Файл-> Другие настройки-> Структура проекта по умолчанию-> SDK


4
Привет, у меня установлен jdk1.8, который "связан" в структуре проекта, но проблема все еще возникает
Kotik_o

Ваш ответ хорош, но, возможно, добавьте, что когда вы открываете структуру проекта, вы видите обзор текущих проблем, таких как версия JDK.
Джобберт 06

1
Спасибо; просто установка JDK 8 и установка его в структуре проекта по умолчанию сработали для меня.
pipedreambomb

1
В OSX я установил JAVA_HOME в / Applications / Android Studio.app/Contents/jre/jdk/Contents/Home, решил проблему.
Чжан Базз

Я обнаружил, что в настройке JAVA_HOMEнет необходимости, но использовать ее File->Project Structureможно. Также вы можете установить значение «Использовать встроенный JDK».
ThomasW

70

Это ошибка в Android Studio. Обычно вы получаете сообщение об ошибке: Не поддерживается версия major.minor 52.0

ВОЗМОЖНОЕ РЕШЕНИЕ. Если вы установили Android N, измените версию рендеринга Android на более старую, и проблема исчезнет.

РЕШЕНИЕ: Установите Android SDK Tools 25.1.3 (инструменты) или выше.

введите описание изображения здесь


Хахаха, как это просто ?? И тут я подумал, что мне
потребовалось

12
Где это окно предварительного просмотра? Пункт меню My View \ Tool Windows \ Preview отключен.
Лорек

Я использую Eclipse 4.5.2, Android SDK Tools - 24.4.1, а ADT - 23.0.7. У меня такая же ошибка. Как мне решить эту проблему?
Доктор Джеки 01

@ Mr.Hyde Вы используете JDK 1.8?
rm8x

Вы можете быть более конкретным? Как я могу это изменить? Какие команды?
João Pimentel Ferreira,

41

Я все сделал, установив JAVA_HOME, JAVA8_HOME, ... и у меня всегда была ошибка. Для меня решение заключалось в том, чтобы установить версию 2.1.0 Gradle для работы с Jdk 1.8.0_92 и android studio 2.11.

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

1
Я искал в Google 2 часа, чтобы решить эту проблему. Вы спасли мою жизнь!
Soohwan Park

ДА! Это тоже решило это для меня, ни один из других предложенных ответов не сработал. У меня возникла проблема с проектом, которому несколько месяцев, и когда я попытался открыть его на новом компьютере со свежей версией Android Studio.
Маттиас Петтер Йоханссон

Это сработало для меня, спасибо .. !! Но почему это дало мне ошибку. Следуя пути к классам, я установил
путь к

36

Для тех из вас, кто все еще сталкивается с этим. У меня возникла эта проблема после обновления до Android Studio до 2.1.2. Я застрял в этой проблеме около часа, я пробовал следующие решения:

  1. multidexEnabled истина
  2. увеличение памяти для потока демона
  3. обновлен до Java 8

Я дважды проверил скрипты Gradle и обнаружил следующее:

 compileSdkVersion 23
 buildToolsVersion "24.0.0"

изменился на:

compileSdkVersion 23
buildToolsVersion "23.0.3"

Я не знаю, как это вызвало ошибку, но это помогло мне. Пожалуйста, дайте мне знать, как это работало, если вы знаете ответ. Спасибо


Спасибо. Это устранило проблему, с которой я скомпилировал свой проект Android.
stevehs17

Все, что мне было нужно
это

28

Неподдерживаемая версия major.minor 52.0

Когда для компиляции используется более высокий JDK, он создает файл класса с более высокой версией, а когда более низкий JDK используется для запуска программы, он обнаруживает, что более высокая версия файла класса не поддерживается на уровне JVM, и приводит к java.lang.UnsupportedClassVersionError.

Как исправить

  • Увеличьте версию JAVA, которую вы используете для запуска вашей программы

Вы можете следовать некоторым трюкам

  • Вызов стабильной версии classpath 'com.android.tools.build:gradle:2.1.0' // 2.3.0

Настройка Gradle

Чтобы включить возможности языка Java 8 и Jack для вашего проекта, введите следующее в файл build.gradle на уровне модуля:

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

Любезно предоставлено Java 8 Language Features

Просто выберите «API 23: Android 6.0» в разделе предварительного просмотра.

введите описание изображения здесь


@fantasy мое удовольствие.
IntelliJ Amiya

Мне пришлось снизить градиент и включить параметры Java jack. Однако я до сих пор не понимаю, почему возникает ошибка и как она будет решена в будущем. У меня все обновлено до последних версий: /
htafoya

25

Если вы видите эту ошибку и только что обновились до Android Studio 2.2+, вам необходимо обновить JDK в параметрах «Структура проекта».

В OSX это находится в разделе File > Project Structure > SDK. Или с экрана приветствия в Configure > Project Defaults > Project Structure.

Выберите этот Use the embedded JDK (recommended)вариант вместо использования собственного JDK.

Документы Google еще не обновлены, чтобы отразить это изменение. См. Http://tools.android.com/tech-docs/configuration/osx-jdk


7

В моем случае мне пришлось изменить зависимости build.gradleфайла на:

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

(изначально был 2.2.2 ) Я думаю, это было создано несколькими людьми, работающими в одном проекте с разными версиями gradle. Поэтому проверьте версию Gradle и отредактируйте этот файл должным образом.

Волны позитива!


7

В последней версии рекомендуется переключиться на встроенный JDK, как на изображении ниже, и это решит вашу ошибку.

устранить ошибку major.minor версии 52.0


Меня не волновала вся эта возня с различными версиями SDK и JDK, рекомендованными здесь, но я собирался это сделать и обнаружил опцию «Использовать встроенный JDK», которая сработала. Я собирался опубликовать это решение и увидел ваше. Это должно быть правильное решение, ИМХО.
Дэвид Гиш

То же, что и @DavidGish, это решение помогло ему
Джереми Пьедноэль,

4

Я также получил такое же сообщение об ошибке « Unsupported major.minor version 52.0 » при запуске ./gradlew makeJar для создания библиотеки jar в Android Studio 2.2.3.

После перемещения версии плагина gradle в build.gradle с 2.2.2 на 2.1.3 сообщение об ошибке исчезло, и все работало нормально . путь к классам 'com.android.tools.build:gradle: 2.1.3 '

Я не знаю, как более высокая версия плагина gradle вызвала ошибку, но это помогло мне. пожалуйста, дайте мне знать, как это работало, если вы знаете ответ, спасибо


Большое спасибо за указание на 2.1.3. это решило мою проблему!
artman

4

1. Убедитесь, что версия Gradle Gradle JVM введите описание изображения здесь

2. Убедитесь, что ProjectSettings SDKs Veriosn введите описание изображения здесь


3

Для меня обновление Android Studio до последней версии решило проблему.


3

Я пытался найти решение этой проблемы. Я пробовал большинство решений, упомянутых в этой ветке. Однако я не совсем уверен, почему это произошло. Вероятно, ошибка в Android Studio. Во всяком случае, вот что решило проблему:

На уровне приложения build.gradle удалено:

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

заменено на:

classpath 'com.android.tools.build:gradle:2.0.0'

2

Это происходит из-за несовместимости версии Java, которую вы используете в студии Android, и версии Java, которая использовалась с вашим импортированным проектом. Перейдите к. File->Project structure->Change jdk 1.7 to jdk 1.8После этого перейдите к File->click on Invalidate cacheи перезапустите. Надеюсь это поможет..

И измените путь к классам зависимостей в файле gradle

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
}

1

У меня сработал переход с Java SDK на Java 8. Настройки Android Studio: Файл -> другие настройки -> Структура проекта по умолчанию -> Местоположение JDK -> jdk1.8.0_71.jdk / Contents / Home


1

Обязательно выполните чистую сборку после изменения версии Java. Как оказалось, Android Studio выполняет некоторую работу, когда вы переключаете JDK, но не очищает рабочее пространство и создает путаницу.¯\_(ツ)_/¯


1

Эта ошибка «Unsupported major.minor version 52.0» относится к компилятору java, хотя строка «major.minor» очень похожа на формат версии Android SDK.

На платформе Windows, помимо обновления jdk до 1.8, убедитесь, что JAVA_HOME указывает на то, где установлен ваш jdk 1.8 (например, C: \ Program Files \ Java \ jdk1.8.0_91).


1

Мне пришлось обновить версию Java до JDK 8 в Jenkins-> Manage Jenkins-> Global Tool Configuration-> JDK .


1

Переход с Java SDK на Java 8 работал у меня

Настройки Android Studio:

Файл> другие настройки> Структура проекта по умолчанию> Расположение JDK> jdk1.8.0_71.jdk / Contents / Home введите описание изображения здесь


Сначала я ответил @intellij amiya, а затем мне пришлось это сделать, чтобы заставить его работать, спасибо!
Питер П.

1

Android Studio в этом случае ведет себя странно. Несмотря на то, что вы устанавливаете версию JDK в File -> Project Structure -> SDK Location, Android Studio использует это только для компиляции файлов. Когда он запускает эти файлы, он по какой-то причине смотрит на переменную PATH, чтобы найти, где установлена ​​java.

Если в вашей системе установлена ​​более старая версия java, тогда ваша переменная PATH будет указывать на эту старую версию java.

Таким образом, вы должны установить PATH так, чтобы он указывал на ту же версию java, которая установлена ​​в настройках вашего проекта студии Android.

Добавьте в свой ~ / .bashrc или соответствующий файл профиля следующее:

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

В моем случае мой проект был настроен на использование java 1.8, но моя общесистемная установка java была java 1.7. Это было причиной проблемы.


0

В моем случае исходная Android SDK Build-toolsверсия - 24, а Andoid SDK Toolsверсия - 25.1.7. Установить Android SDK Build-tools version 23.0.3менеджером Andoird SDK.

Измените эти 2 строки на:

buildToolsVersion "23.0.3" compileSdkVersion 24

Тогда это работает!


0

Загрузите последнюю версию JDK и установите. Перейдите в Инструменты VS2015> Параметры> Xamarin и измените java на последнее расположение JDK.


0

Кроме того, если проблема возникает во время выполнения ./gradlewкоманды, установка java home в gradle.propertiesфайле решает эту проблему:

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


0

Для меня проблема заключалась в том, что версия gradle в build.gradle не совпадала с фактической версией gradle, которую я установил.

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

Проверьте установленные версии Gradle в / Contents / gradle / m2repository / com / android / tools / build / gradle / и измените указанный выше файл build.gradle с помощью

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


0

У меня была такая же ошибка, и у меня JDK 8 был установлен как JAVA_HOME. Оказалось, что у меня установлен Android SDK Build-tools rev 25.0.2. Я удалил это и установил 23.0.2, и это сработало для меня.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.