Ответ 1
В Android Studio откройте: File
> Project Structure
> проверьте, указывает ли местоположение JDK на ваш каталог JDK 1.8.
Примечание: вы можете использовать compileSdkVersion 24
Я использую 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, смешанный режим)
Как это исправить? Благодаря
В Android Studio откройте: File
> Project Structure
> проверьте, указывает ли местоположение JDK на ваш каталог JDK 1.8.
Примечание: вы можете использовать compileSdkVersion 24
У меня такая же проблема в течение нескольких дней. Я нашел решение, которое работало от меня в 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
Я установил последний jdk, но использовал старый, пока не сделал это:
app rt-click >> module settings >> sdk location >> (old jdk path)
Замените старый путь JDK на новый путь jdk.
Теперь работает как шарм:)
Просто FYI. У меня была эта ошибка с проектом Ionic. Все команды вернулись, указав правильный JDK, и JAVA_HOME был установлен правильно.
В моем PATH была запись в JDK 1.7\bin, заменив ее на 1.8\bin, исправленную для меня.
Я также столкнулся с той же проблемой из командной строки на моем 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
. Надеюсь, это поможет, если кто-то еще столкнется с той же проблемой из командной строки.
В Android Studio откройте: Файл > Структура проектa > Местоположение SDK > Выбрать jdk1.8.0_101.jdk > Главная
Я также столкнулся с той же проблемой из командной строки в моей 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
В 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.