Ошибка: compileSdkVersion android-21 требует компиляции с JDK 7

Во время компиляции я получаю ошибку Error:compileSdkVersion android-21 requires compiling with JDK 7, говоря, что требуется более новая версия JDK.

Я работаю на OS X Yosemite с Android Studio v0.8.14

Вещи, которые я проверил:

  • Версия Java:

java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

  1. В папке JavaVirtualMachine я вижу только папку 1.6.0.jdk, я не могу найти другую папку.

  2. Попробовал переустановку JDk 8 и 7!

Я не могу найти расположение папки jvm 1.8, любую идею, как я могу там исправить.

Ответ 1

Точное исправление для этой проблемы (пользователи Android Studio на Mac)

Если вы уже обновили до Java 8, обратите внимание, что местоположение JDK теперь находится в пределах /Library/Java по сравнению с местоположением Java 6 /System/Library/Java. Чтобы исправить эту проблему, щелкните правой кнопкой мыши по Project folder > Project Structure > SDK Location.

Затем измените местоположение JDK на

/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home

Если вы установили другую версию JDK (отличную от Java 8), сначала найдите путь, используя java_home script, и используйте вывод. Просто запустите,

/usr/libexec/java_home 

Ответ 2

На самом деле я нашел решение - JDK 7 находится в /Library/Java/JavaVirtualMachines/jdk 1.7.0_71.jdk/Contents/Home.

что заставило его работать на меня. Oracle Docs, где установлен JDK7

Ответ 3

У меня есть решение. Это случилось со мной, и я много искал в Google, но все, что у меня было, было намеками. Много намеков. И я придумал решение с уверенным выстрелом.

Это связано с тем, что на компьютере не установлен JDK 7 (или больше). Каталог JDK в AS/Configuration может указывать на JDK6. (Эта система /Library/...)

Все, что вам нужно сделать, это:

  • Загрузите последнюю версию JDK.
  • Установите его.
  • Точка Android Studio/Конфигурация/По умолчанию проекта/Структура проекта/(Местоположение JDK:) /Library/Java/JavaVirtualMachines/ jdk1.8.0_25.jdk/Contents/Home

Текст, выделенный жирным курсивом, может отличаться, поэтому рекомендуется просмотреть его. Надеюсь это поможет. Провел целый день, столкнувшись с gradle, студией Android. Счастливое кодирование.

Ответ 4

Я нашел ответы Эрика и Субина, объединенные, решил мою проблему:

то есть. нужно установить java JDK для ответа Эрика (если вы используете JDK 7):

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home.

Ошибка, которую я сделал, я попытался просто выбрать каталог jdk1.7.0_71.jdk, и я продолжал получать сообщение об ошибке "Пожалуйста, выберите действительный каталог JDK".

Я работал над форматом, ранее использовавшимся для JDK 6:( - Он работал, когда я дал ему полный путь до содержимого/Главная.

Ответ Subin подскажет вам, как найти ваше местоположение JDK, которое может быть другим в зависимости от того, что вы пытаетесь сделать.

Спасибо Эрик и Субин!

Ответ 5

Я делюсь этим, потому что я хочу помочь тем, кто нашел этот вопрос, когда они ошиблись в Google. Большинство других "ответов" в Интернете занимали много времени. Следуйте ниже, прежде чем тратить столько времени, сколько я сделал.


Я сделал это, чтобы загрузить JDK 7

Затем измените настройку jdk на 1.7.0

enter image description here

Ответ 6

У меня тоже была эта проблема. Пока я не могу найти исправления, поэтому я прибегал к изменению максимальной версии SDK до 20, которая работает с JDK6.

Что касается местоположения файла, то вместо студии Android предполагается, что он должен находиться в /System/Library/Java/JavaVirtualMachines/ Вставить версию JDK/Содержание/Главная.

В действительности мой JDK устанавливается в /Library/Java/JavaVirtualMachines/ JDK Version Here/Contents/Home.

Попытка выбрать JDK в фактическом каталоге, где его установлена, делает студию Android, что мне нужно выбрать допустимое местоположение JDK. На данный момент я не могу найти исправление, так что, как я сказал выше, я прибегал к изменению максимальной версии SDK до 20 вместо 21, и она останется такой, пока больше людей не пострадают от ошибки, чтобы Google исправил ее. Или до тех пор, пока фактическое исправление не будет опубликовано в сети, а не 101 способ не работать.

Надеюсь, что сейчас это помогает, на самом деле это не решение/ответ, но это работа, которая работает для меня на данный момент.

Ответ 7

Если у вас есть только папка 1.6.0.jdk, перейдите по этой ссылке и загрузите и установите jdk 1.7. затем найдите свою папку java в этом пути

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home

Ответ 8

Решения в этом потоке недействительны для той же ошибки в Android Studio 1.4. Меню настроек, например, исчезло. Ниже приведено решение для Android Studio 1.4, работающего на Ubuntu 14.04.

Чтобы решить в Ubuntu 14.04+ и Android Studio 1.4+, вам нужно перейти на

Файл → Другие настройки → Настройки по умолчанию → Сборка, выполнение, развертывание → Компилятор → Компилятор Java → Версия байтового кода проекта

По умолчанию этот раскрывающийся список будет пустым.

Установите для своего предпочтительного JDK, в случае с screencap ниже, 1.8.

android sdk screencap

Voila, ваш проект будет компилироваться.

Ответ 9

  • Загрузите отсюда последний JDK.
  • Откройте инструмент командной строки.
  • Скопируйте и вставьте следующую строку в инструмент командной строки и нажмите клавишу возврата.

/USR/libexec/java_home

  1. Копировать вывод этой команды.
  2. Вернитесь к своему проекту Android и перейдите ниже:

Файл → Структура проекта → Местоположение JDK

изменить (щелкните по квадрату с тремя точками) местоположение JDK (второе изображение) и вставьте в него инструмент командной строки.

введите описание изображения здесь Я собрал эти инструкции с помощью MacBook Pro.