Подтвердить что ты не робот

Ошибка java Lang UnsupportedClassVersion в Xamarin Studio

Я получаю следующую ошибку, когда создаю свой проект. Как это исправить?

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(3,3): Ошибка: java.lang.UnsupportedClassVersionError: com/android/dx/command/Main: Неподдерживаемый major.minor version 52.0 (FGH)


Информация о моей версии из справки > О > Подробности:

Версия Xamarin.Android: 6.0.2.1 (версия для начинающих)
Android SDK: C:\Users\Admin\AppData\Local\Android\android-sdk

Поддерживаемые версии Android:

  • 4.0.3 (уровень API 15)
  • 4.4 (API-уровень 19)
  • 6.0 (уровень API 23)

SDK Tools Версия: 24.4.1
SDK Platform Tools Версия: 23.0.1
SDK Build Tools Версия: 24 rc2

Java SDK: C:\Program Files (x86)\Java\jdk1.7.0_71
java-версия "1.7.0_71"
Java (TM) SE Runtime Environment (сборка 1.7.0_71-b14) Клиентская виртуальная машина Java HotSpot (TM) (сборка 24.71-b01, смешанный режим, совместное использование)

4b9b3361

Ответ 1

Версия 52.0 здесь относится к конкретной версии JDK, которая в этом случае относится к JDK 8.

Xamarin.Android 7.0 требует JDK 1.8 для использования API Nougat (API 24) для Android. Вы можете продолжать использовать ранее версии JDK, если они предназначены для более ранних уровней API Android:

Кроме того, для использования пользовательских элементов управления требуется 64-разрядная версия JDK в Android дизайнер.

Самый простой вариант - установить 64-разрядную версию JDK 1.8, поскольку она назад совместим со всеми предыдущими уровнями API и поддерживает новые Особенности Android-дизайнера.

(Одно неудачное осложнение с JDK 1.8 - это не, совместимое с устаревшая версия Proguard, которая включена в Android SDK. В данный момент это приведет к ошибке "Номер версии неподдерживаемого класса [52.0]", когда пытаясь использовать функции Proguard или Multidex в Xamarin.Android. Видеть 44187. Я бы рекомендовал вам установить это на стороне версии по умолчанию, которую Android отправляет в android-sdk\tools\proguard. Просто переименуйте существующую папку в другое и добавьте новую версию proguard.)

Ответ 2

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

Это сообщение об ошибке вызвано несовместимостью с Java JDK: Android SDK Build-tools версии 24 и выше требуют Java JDK 8 (1.8), тогда как более ранние версии все еще совместимы с Java JDK 7 (1.7). (Это напоминает более старые ответы об одной и той же ошибке.)

Шаги по обновлению:

  • Обновить Java JDK 8. Рекомендуется использовать 64-разрядную версию для совместимости с новыми функциями дизайнера Xamarin Android в Xamarin Studio 6.1 и Xamarin для Visual Studio 4.2.

  • Дважды проверьте, что Java JDK 8 выбран в настройках Xamarin:

    • Visual Studio: Инструменты > Параметры > Xamarin > Настройки Android > Местоположение Java Development Kit.

      "Настройки > " " Параметры → >         & hairsp; > в Visual Studio" >
    • Xamarin Studio (на Mac): Xamarin Studio > Предпочтения > Проекты > Расположение SDK > Android > Java SDK (JDK).

      "Xamarin Studio > Preferences > Projects > SDK Locations > Android > Java SDK (JDK)"

  • Установите Android SDK Build-tools 24.0.1 или новее.

  • (Необязательно) Удалите старые инструменты Android SDK Build-tools 24, в которых ошибка в aapt:

    X3o6Qm.png

Альтернативы

Если вы предпочитаете не обновлять Java JDK 8, вы можете вместо этого выполнить одно из следующих действий.

  • Удалите все версии Android SDK Build-tools версии 24 и выше с помощью менеджера Android SDK.

  • Или установите для свойства AndroidSdkBuildToolsVersion MSBuild более раннюю версию. Например, если у вас также установлена ​​версия 23.0.3, вы можете добавить следующую строку в верхний элемент <PropertyGroup> в файле проекта Android .csproj:

    <AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
    

(См. также https://releases.xamarin.com/technical-bulletin-android-sdk-build-tools-24/.)


Дополнительная справочная информация

Обновление 25 июля 2016 года:

Теперь Google выпустил Android SDK Build-tools 24.0.1. Эта версия исправляет ошибку в aapt, которая присутствовала в версии 24.


Обновление 14 июля 2016 года:

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

Получается, что это сообщение об ошибке вызвано несовместимостью с Java JDK, а не с Xamarin.Android: для Android SDK Build-tools версии 24 требуется Java JDK 1.8, тогда как более ранние версии по-прежнему совместимы с Java JDK 1.7. (Это напоминает более старые ответы об одной и той же ошибке.)


Обновление 16 июня 2016 года:

Версия без предварительного просмотра Android SDK Build-tools версии 24 теперь доступна в Android SDK Manager. Xamarin.Android еще не совместим с этой версией.


Информация с 12 апреля 2016 года:

Инструменты сборки SDK Версия: 24 rc2

"Версия Build Tools" выглядит как проблема. Xamarin.Android еще не совместим с версией Build-tools 24 rc2 из "Предварительный канал" в Android SDK Manager. Вы можете удалить эту версию предварительного просмотра и установить одну из версий без предварительного просмотра Build-tools (например, 23.0.3) с помощью Android SDK Manager.

Ответ 3

РЕШЕНИЕ!

Измените Java SDK на 1.8.x. После перезапуска Visual Studio запустите "Clean Solution", "Build" и будьте счастливы!

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

Ответ 4

Загрузите последнюю версию JDK и установите,

Затем перейдите к:

  • VS2015 Инструменты > Параметры > Xamarin и измените java до последней Расположение JDK.
  • Xamarin Studio: Инструменты → Параметры → Местоположение SDK

Надеюсь, что это поможет.

Ответ 5

Как сказал Brendan Zagaeski, его проблема возникла из-за использования превью-версии инструментов сборки

Пожалуйста, выполните следующие действия.

  • Открыть менеджер SDK
  • Выберите Инструменты сборки с версией 24rc2 (убедитесь, что выбран только этот элемент)
  • Нажмите на удаление

ОБНОВЛЕНИЕ: подробный ответ можно найти здесь fooobar.com/questions/40656/...

** UPDATE 2016 Nov ** Некоторые из моих друзей сказали мне, что это также может случиться с пакетами nuget. Если вышеуказанное не решит ваши проблемы, попробуйте переустановить пакеты nuget.

Ответ 6

Удостоверьтесь, что если в VS вы перейдете на сайт Проект > Свойства имени проектa > Приложение
вы загрузили все выбранные версии в Android SDK

Скажем, что вы только установили API для Android 6.0 (уровень 23) и 5.1.1 (уровень 22), но вы устанавливаете минимальный Android для таргетинга на уровень ниже этого уровня 16, например. Это даст java.lang.UnsupportedClassVersionError: ошибка.

Просто убедитесь, что вы используете правильный уровень API

Ответ 7

Я понимаю, что это немного старше, но я также столкнулся с этой проблемой, и ничего, что я нашел в Интернете, не решит ее. Наконец, я попытался удалить и переустановить некоторые пакеты nuget, которые я установил (SQLite.Net). После этого он скомпилировался. Надеюсь, это полезно для тех, кто исчерпал эти более распространенные решения.

Ответ 8

Я столкнулся с той же проблемой всего пару минут назад. Уверенное решение выстрела: a) Перейдите в раздел "Инструменты" > "Параметры" > "Xamarin" > "Настройки Android" > "Местоположение разработчика Java" > измените его на JDK 1.8 Убедитесь, что вы указали на текущую версию java

100% работающих

Ответ 9

Я столкнулся с той же проблемой, в моей системе была установлена ​​версия java версии 1.7. Я установил версию 1.8 в системе.

Обновлен путь к jdk Tools- > Options- > Xamarin- > Настройки Android → (местоположение набора для разработки java) установите путь jdk к новой версии jdk

перезагрузить проект снова, проблема решена.

Ответ 10

Удаление версии 24, загрузка и установка JDK 1.8_112, изменение набора java-разработок на JKD 1.8_112 (теперь в файлах программ, а не на программных файлах x86) и восстановление проекта сделали трюк для меня.