Soru 'android-24' JDK 1.8 veya daha sonra derlemek için gerektirir


Android Studio'yu kullanıyorum ve yakın zamanda hatayı aldım:

Hata: Yürütme ': app: compileDebugJavaWithJavac' görevinde başarısız oldu.   compileSdkVersion 'android-24' JDK 1.8 veya daha sonra derlemek için gerektirir.

Ama şimdiye kadar yüklenmiş JDK 1.8 var:

: \ Kullanıcılar ..> java -version
  java sürümü "1.8.0_91" Java (TM) SE Runtime
  Ortam (derleme 1.8.0_91-b15) Java HotSpot (TM) 64-Bit Sunucu VM'si
  (25.91-b15, karışık mod oluşturun)

Nasıl düzeltilir? Teşekkürler


76
2018-06-21 00:04


Menşei


Teşekkürler. Şuan çalışıyor. - T D Nguyen
Jdk 1.8 ile ne faydası var? - Andreyua


Cevaplar:


Android Studio'da açık:
File > Project Structure > JDK konumunun JDK 1.8 dizininize işaret edip etmediğine bakın.

Not: kullanabilirsiniz compileSdkVersion 24


179
2018-06-21 00:16



Bir şekilde, yukarıdaki çözümü kullanarak JDK8'e geçmek işe yaramadı. File-> Project Structure-> JDK konumu, her derleme sırasında jdk1.7'ye geri döner. @Szelk Baltazár tarafından çözüm benim için çalıştı. - garnet
Daha önce de belirtildiği gibi, JDK konumu jdk 1.7'ye geri döndü ve @Szelk Baltazár'ın çözümü de işe yaramıyor. Yani, sistem değişkenlerini yeniden tanımlayın stackoverflow.com/a/35974928/2914140, Android Studio'yu kapatın (ve belki bir bilgisayarı yeniden başlatın). Dosyayı silerek yer değiştir jdk.table.xml açıklandığı gibi stackoverflow.com/a/38067170/2914140. Bir Java dünyasında çok korkunç. - CoolMind


Günler için aynı problemim var. Windows'da benden çalışan bir çözüm buldum. (Ayrıca ortam değişkenlerini de ayarlıyorum ama gerek olup olmadığını bilmiyorum.)

Bu satırları build.gradle dosyasına ekleyin:

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

Kaynak: https://code.google.com/p/android/issues/detail?id=203850


9
2018-06-22 06:20



Bu benim için çalıştı .. garnet'in yorumu için teşekkürler - Shachi


En son jdk'yi kurdum ama bunu yapana kadar eski olanı kullanıyordum:

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

Eski JDK yolunu yeni jdk yolunuzla değiştirin.

Şimdi bir çekicilik gibi çalışıyor :)


2
2017-08-02 11:47





Sadece bir FYI bir İyonik proje ile bu hata vardı. Tüm komutlar doğru JDK'yi işaret ederek geri döndü ve JAVA_HOME doğru şekilde ayarlandı.

Benim PATH'ımda JDK 1.7 \ bin'e bir giriş yapıldı, bunu 1.8 \ bin ile değiştirdim.


2
2017-10-28 12:04





Mac'imde komut satırından da aynı konuya koşuyordum, ama cevap şuydu: JAVA_HOME geçersiz hale geliyordu. Aşılmaya başladığı yeri bulmak için önce java'yı komut satırından kontrol edin:

$ 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)

Daha sonra, Gradle'ın hangi Java sürümünü kullandığını kontrol edin:

$ 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

Bu noktada, problemin kaynağını hala bulamadım. Biraz kazı yaptım ve gerçekten de benim gradle.properties yürütüldüğümde Java 8'i gösteren dosya 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

Düzeltmek için yeni java.home satırdan gradle.properties. Umarım bu, başka birinin komut satırından aynı konuya girmesine yardımcı olur.


0
2018-06-21 17:40





Android Studio'da açık: Dosya> Proje Yapısı> SDK Konumu> Seç jdk1.8.0_101.jdk> Ana Sayfa


0
2017-08-29 16:22





Penceremdeki komut satırından da aynı konuya koşuyordum, aynı ipucunu gösteriyor.

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

Kontrol JDK location içinde Project Structure.

Android Studio'da açık: File > Project Structure > JDK konumunun bulunup bulunmadığına bakın   JDK 1.8 dizinine işaret eder.

Gibi görünmeli

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

JDK için doğru yeri zaten belirledim.

java sürümünü kontrol edin

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 sürümünü kontrol et

.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 versiyonu 1,8 olmalıdır. Düzeltmek için gradle.property’e ekleyebiliriz İçinde gradle.properties içinde .gradle dizininizde HOME_DIRECTORY set org.gradle.java.home=/path_to_jdk_directory. Benim için olduğu gibi:

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

Doğru ayarlanmış olup olmadığını doğrulamak için gradle build görev.

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

0
2017-09-27 20:09



Bu cevabın formatını düzeltmek için bana yardımcı olabilecek herhangi biri varsa, bu çok takdir edilecektir. - Francis Bacon


Windows 10'da, önce Proje Yapısını kontrol ettim ve eski bir 1.7 jdk'ye işaret ettim. Android Studio'yu kapattım ve daha sonra sadece en yeni 1.8 kütüphanesini bırakarak eski jdks'leri (ve tutarlılık için jre kitaplıklarını) yeniden adlandırdım. Android Studio'yu yeniden başlattığımda ve uygulamayı oluşturmaya çalıştığımda Java JDK kitaplığı için bana sordu ve en yeni 1.8 JDK kitaplık yolunu verdim. Sistemimde C: \ Program Files \ Java \ jdk1.8.0_112 idi.


0
2018-05-19 15:05