Saya mendapatkan kesalahan berikut saat mencoba mengompilasi proyek saya di Android Studio:
Gradle: error: diamond operator is not supported in -source 1.6
Saya telah menetapkan 1,7 sebagai target dalam semua preferensi proyek yang saya temukan. Juga jalur yang ditampilkan dalam proyek SDK di bawah 1,7 SDK adalah jalur yang benar untuk instalasi java 1.7.
Bahkan ketika saya menjalankan java -versi di terminal, ia memberitahu saya bahwa saya menjalankan java 1.7.
Saya telah mencoba mengatur variabel env JAVA_HOME untuk ini:
/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
Kesalahan tidak hilang. Bagaimana cara menghilangkan kesalahan?
java
intellij-idea
gradle
android-studio
java-7
simekadam
sumber
sumber
sourceCompatibility
menetapkan di build.gradle Anda?Jawaban:
Dukungan Java 7 ditambahkan di build tools 19. Sekarang Anda dapat menggunakan fitur seperti operator berlian, multi-catch, coba-dengan-sumber daya, string dalam sakelar, dll. Tambahkan yang berikut ke Anda
build.gradle
.Gradle 1.7+, plugin Android gradle 0.6. + Diperlukan.
Catatan, yang hanya mencoba sumber daya memerlukan
minSdkVersion
19. Fitur lainnya berfungsi pada platform sebelumnya.Tautan ke panduan pengguna plugin Android gradle
Tautan untuk melihat perbedaan antara sumber dan target
sumber
Mungkin jawaban-jawaban di atas sudah lama tetapi dengan Android Studios 1 yang baru, Anda melakukan yang berikut untuk melihat modul berjalan pada 1,7 (atau 1,6 jika Anda mau). Klik File -> Struktur Proyek. Pilih modul yang ingin Anda jalankan dan kemudian di bawah "Kompatibilitas Sumber" dan "Kompatibilitas Target", pilih 1.7. Klik "OK".
sumber
Anda dapat mengubahnya dalam versi Android studio baru (0.8.X)
FIle-> Pengaturan Lainnya -> Pengaturan Default -> Compiler (Perluas dengan mengklik panah kiri) -> Java Compiler -> Anda dapat mengubah versi bytecode Project di sini
sumber
Studio Android Terbaru 1.4.
Klik File-> Struktur Proyek-> Lokasi SDK-> Lokasi JDK.
Anda juga dapat mengatur kompatibilitas modul JDK Versi individu dengan masuk ke Modul (di bawah Lokasi SDK), dan mengedit Kompatibilitas Sumber sesuai. (catatan, ini hanya berlaku untuk Modul Android).
sumber
Klik kanan pada proyek Anda> Buka Pengaturan Modul> Pilih "Proyek" di bagian "Pengaturan Proyek"
Ubah SDK Proyek ke terbaru (mungkin API 21) dan tingkat bahasa Proyek menjadi 7+
sumber
Saat ini, Android tidak mendukung Java 7, hanya Java 6. Fitur-fitur baru di Java 7 seperti sintaks intan saat ini tidak didukung. Mencari sumber untuk mendukung ini tidak mudah, tetapi saya dapat menemukan bahwa mesin Dalvic dibangun di atas subset Apache Harmony yang hanya pernah mendukung Java hingga versi 6. Dan jika Anda memeriksa persyaratan sistem untuk mengembangkan aplikasi Android, ia juga menyatakan bahwa setidaknya JDK 6 diperlukan (meskipun ini tentu saja bukan bukti nyata, hanya indikasi). Dan ini mengatakan hampir sama dengan yang saya miliki. Jika saya menemukan sesuatu yang lebih subtansial, saya akan menambahkannya.
Sunting: Tampaknya dukungan Java 7 telah ditambahkan sejak saya awalnya menulis jawaban ini; periksa jawabannya oleh Sergii Pechenizkyi .
sumber
Selalu gunakan versi SDK terbaru untuk membangun:
Itu tidak mempengaruhi perilaku runtime , tetapi memberi Anda fitur pemrograman terbaru.
sumber
Pergilah ke Gradle Anda dan cari sourceCompatibility dan ubahlah dari 1,6 menjadi 7 . Setidaknya itu berhasil bagi saya.
Anda juga dapat masuk ke pengaturan modul Anda dan mengatur Kompatibilitas Sumber / Target ke 1.7.
Jendela pengaturan modul
Itu akan menghasilkan kode berikut di Gradle Anda:
sumber