javac: rilis target tidak valid: 1.8


87

Saya baru-baru ini mengunduh JDK 1.8.0.0_06 yang dibundel dengan NetBeans. Saya kemudian menemukan bahwa proyek JavaFx saya, yang saya kembangkan di Java 1.7 tidak dapat dikompilasi di Java 1.8, jadi saya menurunkan JDK saya ke 1.7. Masih saya tidak bisa membuatnya bekerja / dikompilasi. Saya mendapatkan kesalahan ini:

javac: invalid target release: 1.8
Usage: javac <options> <source files>

Saya benar-benar buntu dan akan sangat menghargai bantuan apa pun.


1
jika Anda akan mundur, ubah juga sumber proyek Anda menjadi 1,7, klik kanan pada sumber Anda Project -> Properties -> Sources windowdan tetapkan 1,7 di sini
jmj

Anda adalah penyelamat hidup @Jigar Joshi !!!! Terima kasih lagi ***** a mill. Saya sangat berterima kasih. Anda bisa menempatkan tanggapan Anda sebagai jawaban sehingga saya bisa menerimanya. Wow! Sekali lagi terimakasih. Sudah lama terjebak!
Program-Me-Rev

Jika proyek Anda tidak dapat dikompilasi di bawah Java 1.8, kemungkinan besar Anda melakukan kesalahan yang sangat parah (misalnya, Anda memiliki bidang statis untuk komponen UI dalam kode yang Anda posting di quetion Anda yang lain, yang merupakan kesalahan desain yang serius). Mungkin lebih baik untuk memperbaiki masalah itu daripada hanya kembali ke versi di mana banyak pengguna akan meningkatkannya di masa mendatang.
James_D

Anda benar @James_D. Ini adalah proyek pertama saya di java. Saya cukup banyak belajar sendiri pemrograman, dan tidak mendapatkan semuanya tentang menghindari anggota statis, antarmuka, dan sisanya tentang polimorfisme sampai sekarang. Proyek saya terlalu besar untuk diedit sekaligus. Saya berencana untuk mengeditnya dan beralih ke injeksi ketergantungan melalui Spring sedikit demi sedikit saat saya menyelesaikan area lainnya yang tersisa. Ini pelajaran yang menyakitkan, tapi dipelajari dengan baik.
Program-Me-Rev

1
Ada versi Java 1.8.0, 1.8.0_05, dan 1.8.0_11, tetapi tidak ada yang namanya 1.8.0.0_06.
David Conrad

Jawaban:


33

jika Anda akan mundur, ubah sumber proyek Anda menjadi 1,7 juga,

right click on your Project -> Properties -> Sources window 

dan setel 1.7di sini

catatan: namun saya menyarankan Anda untuk mencari tahu mengapa itu tidak berhasil pada 1.8


65

Untuk IntelliJ14 Anda mungkin harus mengubah versi bytecode wrt JDK yang Anda gunakan (dalam pengaturan global):

masukkan deskripsi gambar di sini


Tidak berfungsi untuk saya, mengubah versi bytecode Target menjadi 1.8 tetapi mendapatkan kesalahan yang sama
tribbloid

Tetapi pertanyaannya adalah tentang Netbeans?
Jolta

27
  1. Unduh JDK 8 .
  2. Edit env var Anda untuk JAVA_HOMEmenunjuk ke JDK 1.8 yang baru diinstal: Klik-R pada My Computer -> Properties -> Advanced System Settings -> Environment Variables temukan JAVA_HOMEdi daftar dan atur nilainya menjadi seperti itu:

    C:\Program Files\Java\jdk1.8.0_31
    
  3. Temukan versi lama dan edit di PATH variabel juga.

  4. Mungkin Anda perlu memulai ulang sistem.

Harus dilakukan.


23

Jika error ini terjadi saat menjalankan tugas Gradle (atau Maven), Anda perlu mengubah konfigurasi fitur build tersebut agar mengarah ke penginstalan Java JDK 1.8 Anda dengan mengikuti rute ini:

File -> Pengaturan -> Build, Execution, Deployment -> Build Tools -> Gradle

Di sana Anda memeriksa proyek Linked Gradle adalah yang sedang Anda kerjakan dan pilih Gradle JVM (Anda melewatkan ini saat Anda mengimpor proyek gradle ke IntelliJ)

masukkan deskripsi gambar di sini

Ingatlah saat mengimpor proyek Gradle (atau Maven) untuk menyetel JVM target dengan benar di sini: masukkan deskripsi gambar di sini


14

Javac Anda tidak mengarah ke java yang benar.

Periksa ke mana javac Anda mengarah menggunakan perintah berikut -

update-alternatives --config javac

Jika tidak diarahkan ke javac yang ingin Anda kompilasi, arahkan ke "/ JAVA8_HOME / bin / javac", atau java mana pun yang ingin Anda kompilasi.


mengapa -1, saya mengalami masalah yang sama, dan itu karena javac saya tidak disetel ke versi java yang benar?
Piyush Jajoo

Ingatlah bahwa konfigurasi mungkin rusak dengan cara java dan javac dipilih dari distribusi yang berbeda!
Audrius Meskauskas

9

Sering kali, jenis masalah ini terjadi karena versi java yang salah. Pastikan variabel PATH dan JAVA_HOME Anda mengarah ke versi yang benar.


Yup - itu juga tujuan saya
guy mograbi

4

Pengaturan Maven:

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

3

Tidak ada solusi sebelumnya yang berhasil untuk saya.

Saya menyelesaikannya dengan mengedit .idea / compiler.xml Ada salinan "ekstra" (1) dan (2) dari modul yang buruk dengan target berbeda. Saya menghapus permintaan asing dan mengubah target di bagian menjadi 1.8 dan berhasil.


Itu juga memperbaikinya untukku.
davidmerrick

2

Untuk IntelliJ IDEA Ultimate versi terbaru pada 18 Des 2017, jika saran di atas tidak berhasil, silakan coba yang berikut ini: Klik kanan pada proyek dan arahkan ke "Buka Pengaturan Modul". Buka, lalu ubah "Tingkat Bahasa" dari menu tarik-turun.


Pastikan juga bahwa di Module Settings di bawah tab Dependencies, modul SDK yang benar dipilih.
Rene Juuse

1

jika Anda akan mundur, ubah sumber proyek Anda menjadi 1,7 juga,

klik kanan pada Project Anda -> Properties -> Sources dan atur 1.7 di sini "Jigar Joshi

Juga pergi ke build-impl.xmldan cari properti excludeFromCopy="${copylibs.excludes}"dan hapus properti ini pada kode saya berada di baris 827 tetapi saya telah melihatnya di baris lain

bagi saya itu mengambil kode dari MAC OS java 1.8 ke WIN XP java 1.7


1

Atau, saya memeriksa pom.xml dan mengubahnya

<java.version>1.8</java.version>

untuk

<java.version>1.7</java.version>

Gracias, ini memperbaikinya untukku, sangat sederhana.
Fabii

1

Saya mendapat masalah yang sama dengan netbeans, tetapi mvn build tidak masalah di jendela cmd. Bagi saya masalah teratasi setelah mengubah JDK netbeans (di netbeans.conf seperti di bawah ini),

netbeans_jdkhome = "C: \ Program Files \ Java \ jdk1.8.0_91"


Edit: Sepertinya itu disebutkan di sini: bug netbeans 236364



0

Saya mendapat masalah yang sama di IntelliJ IDEA Community dengan Maven dan saya harus mengimpor ulang proyek dengan mengklik kanan proyek di tab Proyek -> Maven -> Impor Ulang


-1

Menginstal rilis Komunitas IDEA yang lebih baru (2018.3 bukannya 2017.x) telah memecahkan masalah saya dengan kesalahan yang sama tetapi versi java: 11. Impor kembali tidak berhasil untuk saya. Tapi itu patut dicoba.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.