Kesalahan: compileSdkVersion android-21 memerlukan kompilasi dengan JDK 7

106

Saat mengkompilasi saya mendapatkan kesalahan Error:compileSdkVersion android-21 requires compiling with JDK 7, mengatakan bahwa versi JDK yang lebih baru diperlukan.

Saya menjalankan OS X Yosemite dengan Android Studio v0.8.14

Hal yang saya periksa:

  1. Versi 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. Di dalam folder JavaVirtualMachine saya hanya dapat melihat 1.6.0.jdkfolder, saya tidak dapat menemukan folder lain.

  2. Mencoba menginstal ulang JDk 8 dan 7!

Saya tidak dapat menemukan lokasi folder jvm 1.8, tahu bagaimana saya bisa memperbaikinya di sana.

Arjun Komath
sumber
Saya mengalami masalah yang sama. Sudahkah Anda menemukan solusi untuk ini?
gsueagle2008
@EricCumbee Menggunakan Jdk 7 seperti yang ditunjukkan di bawah ini memecahkan masalah.
Arjun Komath
4
Tidak masuk akal bahwa ini adalah pengalaman pertama kalinya.
Andy

Jawaban:

224

Perbaikan Tepat untuk Masalah ini (Pengguna Android Studio di Mac)

Jika Anda telah meningkatkan ke Java 8, harap diperhatikan bahwa lokasi JDK sekarang berada dalam jarak /Library/Javadibandingkan dengan lokasi Java 6 /System/Library/Java. Jadi untuk memperbaiki masalah ini, klik kanan pada Project folder> Project Structure>SDK Location.

Kemudian ubah lokasi JDK menjadi

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

Jika Anda telah menginstal versi JDK yang berbeda (selain Java 8), cari tahu jalur menggunakan java_homeskrip terlebih dahulu dan gunakan outputnya. Lari saja,

/usr/libexec/java_home 
Subin Sebastian
sumber
10
Terima kasih @Subin Untuk Android studio 1.0.1 SDK Lokasi terletak di File > Project Structureatau cukup tekanCommand + ;
Husam
1
Jawaban sempurna untuk pengguna studio android .. menyelamatkan saya
reidisaki
jalur yang disebutkan di bawah ini berfungsi untuk saya /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home
Teja Swaroop
2
Saya dengan serius terus melihat lokasi saya dan berpikir itu baik-baik saja tetapi terus melihat jdk1.6 sampai saya menyadari apa yang Anda maksudkan tentang memastikan Anda berada di / Library / Java daripada / System / Library / Java di mana saya dengan mudah menemukan jdk1. 8 untuk masuk ke Contents / Home dan boom, sekarang Android Studio berfungsi tanpa kesalahan terus-menerus. Anda adalah orang suci!
ColossalChris
1
Ini bekerja untuk Windows juga! Arahkan saja ke penginstalan JDK. Contoh:C:\Program Files\Java\jdk1.8.0_51
ADTC
29

Sebenarnya saya baru saja menemukan solusinya - JDK 7 ada di /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home.

yang membuatnya bekerja untuk saya. Oracle Docs tempat JDK7 diinstal

gsueagle2008
sumber
2
Saya tidak dapat melihat folder ini! milik saya hanya menunjukkan folder ini1.6.0.jdk
Arjun Komath
Saya tidak ingat di mana Android Studio awalnya mencari, tetapi folder 1.7 JDK tidak berada di pohon direktori yang sama dengan 1.6.0jdk.
gsueagle2008
6
@Arjun mendapat kebingungan yang sama seperti milikmu. Tetapi kemudian saya baru menyadari bahwa direktori "Java" JDK 7 sebenarnya terletak di /Library/Javaalih-alih /System/Library/Javaterpisah dari JDK 6 saya
akhy
Jadi dalam bahasa Inggris yang sederhana, apa yang sebenarnya Anda lakukan untuk memperbaiki masalah tersebut?
JGallardo
{ROOT}
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/
10

Saya punya solusi. Itu terjadi pada saya juga dan saya banyak mencari di Google tetapi yang saya dapatkan hanyalah petunjuk. Banyak petunjuk. Dan saya datang dengan solusi yang pasti.

Ini karena komputer tidak menginstal JDK 7 (atau lebih tinggi). Direktori JDK di AS / Konfigurasi mungkin mengarah ke JDK6. (Sistem / Perpustakaan / ...)

Yang perlu Anda lakukan hanyalah:

  1. Unduh JDK terbaru.
  2. Pasang itu.
  3. Arahkan Android Studio / Configure / Project Defaults / Project Structure / (JDK Location :) ke / Library / Java / JavaVirtualMachines / jdk1.8.0_25.jdk / Contents / Home

Teks yang disorot dengan huruf tebal-miring mungkin berbeda, jadi Anda disarankan untuk menjelajahinya. Semoga ini membantu. Menghabiskan sepanjang hari mengotak-atik gradle, studio android. Selamat membuat kode.

TheOnlyAnil
sumber
7

Saya menemukan gabungan jawaban Eric dan Subin memecahkan masalah saya:

yaitu perlu mengatur java JDK ke jawaban Eric (dengan asumsi Anda menggunakan JDK 7):

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

Kesalahan yang saya buat adalah saya mencoba memilih direktori jdk1.7.0_71.jdk dan saya terus mendapatkan pesan kesalahan "Harap pilih direktori JDK yang valid".

Saya sedang mengerjakan format yang sebelumnya digunakan untuk JDK 6 :( - Berfungsi ketika saya memberikannya jalur lengkap ke Isi / Beranda.

Jawaban Subin memberitahu Anda bagaimana menemukan lokasi JDK Anda yang mungkin berbeda tergantung pada apa yang Anda coba lakukan.

Terima kasih Eric dan Subin!

pengguna2155964
sumber
3

Saya membagikan ini karena saya ingin membantu mereka yang menemukan pertanyaan ini ketika mereka mencari kesalahan di Google. Kebanyakan "jawaban" lain di internet sangat memakan waktu. Ikuti di bawah ini sebelum Anda membuang banyak waktu seperti yang saya lakukan.


Yang saya lakukan adalah mengunduh JDK 7

Kemudian ubah pengaturan jdk menjadi 1.7.0

masukkan deskripsi gambar di sini

JGallardo
sumber
3

Saya juga mengalami masalah ini. Sejauh ini saya tidak dapat menemukan perbaikan untuk itu, jadi saya terpaksa mengubah versi SDK maksimum menjadi 20, yang berfungsi dengan JDK6.

Sedangkan untuk lokasi file, alih-alih Android studio dengan asumsi itu harus di / System / Library / Java / JavaVirtualMachines / Insert JDK version / Contents / Home.

Pada kenyataannya JDK saya terinstal di / Library / Java / JavaVirtualMachines / JDK Version Here / Contents / Home.

Mencoba memilih JDK di direktori sebenarnya tempat menginstalnya membuat studio android mengatakan bahwa saya perlu memilih lokasi JDK yang valid. Untuk saat ini saya tidak dapat menemukan perbaikan, jadi seperti yang saya katakan di atas, saya terpaksa mengubah versi SDK maksimum menjadi 20, bukan 21 dan itu akan tetap seperti itu sampai lebih banyak orang menderita bug sehingga Google memperbaikinya. Atau sampai perbaikan yang sebenarnya diposting online alih-alih 101 cara agar tidak berhasil.

Semoga ini bisa membantu untuk saat ini, ini sebenarnya bukan solusi / jawaban tetapi ini adalah solusi yang berhasil untuk saya, untuk saat ini.

Leccles 1
sumber
0

jika Anda hanya memiliki folder 1.6.0.jdk maka buka tautan ini dan unduh dan instal jdk 1.7. kemudian temukan folder java Anda di jalur ini

/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
hash
sumber
0

Solusi pada utas ini tidak valid untuk kesalahan yang sama di Android Studio 1.4. Menu preferensi, misalnya, hilang. Di bawah ini adalah solusi untuk Android Studio 1.4 yang berjalan di Ubuntu 14.04.

Untuk menyelesaikan di Ubuntu 14.04+ dan Android Studio 1.4+, Anda harus pergi ke

File -> Pengaturan Lain -> Pengaturan Default -> Build, Execution, Deployment -> Compiler -> Java Compiler -> Project Bytecode Version

Drop-down ini akan kosong secara default.

Set ke JDK pilihan Anda, untuk screencap di bawah ini, 1.8.

android sdk screencap

Voila, proyek Anda akan dikompilasi.

Barnhillec.dll
sumber
0
  1. Unduh dari sini JDK terbaru.
  2. Buka alat baris perintah.
  3. Salin dan tempel baris berikut ke dalam alat baris perintah Anda dan tekan kembali.

/ usr / libexec / java_home

  1. Salin keluaran dari perintah ini.
  2. Kembali ke proyek android Anda, dan navigasikan seperti di bawah ini

File -> Struktur proyek -> Lokasi JDK

edit (klik persegi dengan tiga titik) lokasi JDK (gambar ke-2) dan tempelkan keluaran alat baris perintah di sana.

masukkan deskripsi gambar di sini Saya telah mengumpulkan instruksi ini menggunakan MacBook Pro.

pengguna2511630
sumber