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

"Андроид-24" требует компиляции JDK 1.8 или новее

Я использую Android Studio и недавно получил ошибку:

Ошибка: выполнение выполнено для задачи ': app: compileDebugJavaWithJavac'. Для компиляцииSdkVersion 'android-24' требуется компиляция JDK 1.8 или новее.

Но у меня уже установлен JDK 1.8:

:\Users.. > java -version
java-версия "1.8.0_91" Java (TM) SE Runtime
Окружающая среда (build 1.8.0_91-b15) Виртуальная виртуальная машина Java HotSpot (TM)

(постройте 25.91-b15, смешанный режим)

Как это исправить? Благодаря

4b9b3361

Ответ 1

В Android Studio откройте:
File > Project Structure > проверьте, указывает ли местоположение JDK на ваш каталог JDK 1.8.

Примечание: вы можете использовать compileSdkVersion 24

Ответ 2

У меня такая же проблема в течение нескольких дней. Я нашел решение, которое работало от меня в Windows. (Я также устанавливаю переменные среды, но не знаю, нужно ли это.)

Добавьте эти строки в файл build.gradle:

android {
     ...
     defaultConfig {
          ...
          jackOptions {
              enabled true
          }
     }
     compileOptions {
         targetCompatibility 1.8
         sourceCompatibility 1.8
     }
}

Источник: https://code.google.com/p/android/issues/detail?id=203850

Ответ 3

Я установил последний jdk, но использовал старый, пока не сделал это:

app rt-click >> module settings >> sdk location >> (old jdk path)

Замените старый путь JDK на новый путь jdk.

Теперь работает как шарм:)

Ответ 4

Просто FYI. У меня была эта ошибка с проектом Ionic. Все команды вернулись, указав правильный JDK, и JAVA_HOME был установлен правильно.

В моем PATH была запись в JDK 1.7\bin, заменив ее на 1.8\bin, исправленную для меня.

Ответ 5

Я также столкнулся с той же проблемой из командной строки на моем Mac, но ответ заключался в том, что JAVA_HOME получал переопределение. Чтобы отследить, где он будет переопределен, сначала проверьте java из командной строки:

$ java -version
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)

Затем проверьте, какая версия Java используется Gradle:

$ gradle -version

------------------------------------------------------------
Gradle 2.13
------------------------------------------------------------

Build time:   2016-04-25 04:10:10 UTC
Build number: none
Revision:     3b427b1481e46232107303c90be7b05079b05b1c

Groovy:       2.4.4
Ant:          Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM:          1.8.0_92 (Oracle Corporation 25.92-b14)
OS:           Mac OS X 10.11.5 x86_64

В этот момент я все еще не нашел источник проблемы. Немного копался и обнаружил, что он действительно был переопределен в моем файле gradle.properties, хотя он показывал Java 8 при выполнении gradle -version:

org.gradle.daemon=true
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
org.gradle.jvmargs=-XX:MaxPermSize=512m -XX:-UseSplitVerifier -Xms512m -Xmx6144m

Чтобы исправить, я просто удалил строку java.home из gradle.properties. Надеюсь, это поможет, если кто-то еще столкнется с той же проблемой из командной строки.

Ответ 6

В Android Studio откройте: Файл > Структура проектa > Местоположение SDK > Выбрать jdk1.8.0_101.jdk > Главная

Ответ 7

Я также столкнулся с той же проблемой из командной строки в моей Windows, она показывает тот же намек.

Error:Execution failed for task ':app:compileDebugJavaWithJavac'. `compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.`

проверить JDK location в Project Structure.

В Android Studio откройте: File > Project Structure > посмотрите, находится ли местоположение JDK указывает на ваш каталог JDK 1.8.

Он должен выглядеть как

JDK Location
C:\Program Files\Java\jdk1.8.0_91

Я уже установил правильное расположение в JDK.

проверить версию java

D:\AndroidSelfTrainingProject\CustomBuildIdDemo>java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

проверьте версию gradle

.D:\AndroidSelfTrainingProject\CustomBuildIdDemo>gradle -v

------------------------------------------------------------
Gradle 2.10
------------------------------------------------------------

Build time:   2015-12-21 21:15:04 UTC
Build number: none
Revision:     276bdcded730f53aa8c11b479986aafa58e124a6

Groovy:       2.4.4
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.7.0_79 (Oracle Corporation 24.79-b02)
OS:           Windows 7 6.1 amd64

Версия JVM должна быть 1,8. Чтобы исправить это, мы можем добавить в gradle.property В gradle.properties в каталоге .gradle в вашем HOME_DIRECTORY установите org.gradle.java.home=/path_to_jdk_directory. Что касается меня, это похоже на:

org.gradle.java.home=C:/Program Files/Java/jdk1.8.0_91

Чтобы проверить правильность установки, мы можем выполнить задачу gradle build.

D:\AndroidSelfTrainingProject\CustomBuildIdDemo>gradle build
To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon
: https://docs.gradle.org/2.10/userguide/gradle_daemon.html.

To run dex in process, the Gradle daemon needs a larger heap.
It currently has approximately 910 MB.
For faster builds, increase the maximum heap size for the Gradle daemon to more than 2048 MB.
To do this set org.gradle.jvmargs=-Xmx2048M in the project gradle.properties.
For more information see https://docs.gradle.org/current/userguide/build_environment.html

Ответ 8

В Windows 10 я сначала проверил структуру проекта и указал на старый 1,7 jdk. Я закрыл Android Studio, а затем переименовал старые jdks (и библиотеки jre для согласованности), оставив только самую новую библиотеку 1.8. Когда я перезапустил Android Studio и попытался создать приложение, он попросил меня использовать Java JDK-библиотеку, и я дал путь к новейшей библиотеке JDK 1.8. В моей системе это были C:\Program Files\Java\jdk1.8.0_112.