ide intellij - Kesalahan: java: rilis sumber tidak valid 1.9

129

Saya mencoba menjalankan kelas parser JSQL saya, tapi saya mengerti Error: java: invalid source release 1.9.

Saya mencoba mengikuti jawaban ini . Saya mengubah File> Build, Execution, Deployment> Java Compiler> Project bytecode versi: 1.8. Namun, saya tidak dapat mengubah tingkat bahasa Modul dan tingkat bahasa Proyek menjadi 1,8 karena tidak ada opsi untuk itu. Saya masih mendapatkan kesalahan yang sama di bawah ini.

Kesalahan masukkan deskripsi gambar di sini

Kode

package cs4321.project2;

import java.io.FileReader;
import net.sf.jsqlparser.parser.CCJSqlParser;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.select.Select;

public class Parser {
    private static final String queriesFile = "resources/input/queries.sql";

    public static void main(String[] args) {
        try {
            CCJSqlParser parser = new CCJSqlParser(new FileReader(queriesFile));
            Statement statement;
            while ((statement = parser.Statement()) != null) {
                System.out.println("Read statement: " + statement);
                Select select = (Select) statement;
                System.out.println("Select body is " + select.getSelectBody());
            }
        } catch (Exception e) {
            System.err.println("Exception occurred during parsing");
            e.printStackTrace();
        }
    }
}
Alex
sumber
Apa versi intellij?
soorapadman
@soorapadman intellij idea 2017.2.2
Alex
tampaknya baik-baik saja itu harus bekerja Apakah Anda bekerja dengan proyek pakar?
soorapadman
Namun, saya tidak dapat mengubah tingkat bahasa Modul dan tingkat bahasa Proyek menjadi 1,8 karena tidak ada opsi untuk itu. kenapa begitu? dan kesalahan apa yang Anda dapatkan saat mencoba melakukannya? Juga 1,9 tampaknya menjadi versi java. Apakah Anda memiliki Java-9 yang dikonfigurasi pada mesin / intelliJ Anda?
Naman

Jawaban:

324

Pilih proyek, lalu File> ProjectStructure> ProjectSettings> Modul -> sumber Anda mungkin memiliki Tingkat Bahasa ditetapkan pada 9:

tangkapan layar

Ubah saja ke 8 (atau apa pun yang Anda butuhkan) dan Anda siap melakukannya.

Juga, periksa pengaturan Level Bahasa yang sama yang disebutkan di atas, di bawah Pengaturan Proyek> Proyek

masukkan deskripsi gambar di sini

Dekan
sumber
1
Oh, akhirnya saya tahu apa arti level bahasa proyek, terima kasih
Daniel Dai
1
Juga, dalam gambar di atas, jangan lupa untuk pergi ke bagian Modul
John Peters
1
Perubahan yang lebih baik di pom.xml <java.version> 1.8 </java.version> Seperti, jika tidak, mungkin akan mengatur ulang konfigurasi setelah dimasukkan kembali ke intellij
Rakesh Yembaram
22

Kadang-kadang masalah terjadi karena versi yang salah dari bytecode proyek.

Jadi verifikasi: File -> Pengaturan -> Build, Eksekusi, Deployment -> Compiler -> Java Compiler -> Project bytecode versi dan tetapkan nilainya ke 8

Contoh

Rogol
sumber
1
itu solusi bagi saya di bagian atas Pengaturan Proyek-> Modul -> Tingkat Bahasa
Kemal Atik
1
Ini adalah jawaban komplementer yang bagus untuk yang diterima.
Dalton
15

Saya memiliki masalah yang sama. Ada jawabannya:

  • 1. CTRL + ALT + SHIFT + S ;
    1. Lalu pergi ke " Modul" ;
    2. " Ketergantungan ;
    3. Ubah " Modul SDK ".

Mengerti! Sekarang kamu punya Java 9!

Dmitry Kaltovich
sumber
5

intellij-invalid-source

Anda harus mengatur JAVA SDK dan tingkat bahasa yang sesuai dalam pengaturan proyek. Klik untuk memperbesar.

Gayan Weerakutti
sumber
3

Saat menggunakan proyek pakar.

periksa file pom.xml

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>9</java.version>
</properties>

jika Anda memiliki jdk 8 diinstal di mesin Anda, ubah java.versionproperti dari 9menjadi8

abitcode
sumber
2

Saya baru saja mengalami masalah serupa. Proyek telah dibuka menggunakan Java 9 tetapi bahkan setelah semua modul dan proyek diatur kembali ke 1,8, saya masih mendapatkan kesalahan.

Saya perlu memaksa Gradle untuk menyegarkan proyek dan kemudian semuanya berjalan seperti yang diharapkan.

Edward
sumber
1

Atau melalui Pengaturan Proyek:

  • Pengaturan Proyek
  • Proyek
  • Tingkat bahasa proyek (diatur agar sesuai dengan kebutuhan Anda)

Bergantung pada bagaimana bangunan Anda disiapkan, ini mungkin cara yang harus dilakukan.

felvhage
sumber
1

Dalam Struktur Proyek di SDK Proyek: ubah SDK ke 11 atau lebih tinggi dan di tingkat bahasa Proyek: ubah ke 11 - Sintaks variabel lokal untuk parameter lambda

Lucian L.
sumber
0

Bagi siapa pun yang berjuang dengan masalah ini yang mencoba solusi DeanM tetapi tidak berhasil, ada hal lain yang perlu diperiksa, yaitu versi JDK yang telah Anda konfigurasi untuk proyek Anda. Yang ingin saya katakan adalah bahwa jika Anda telah mengonfigurasi JDK 8u191 (misalnya) untuk proyek Anda, tetapi mengatur level bahasa menjadi lebih tinggi dari 8, Anda akan mendapatkan kesalahan ini.

Dalam hal ini, mungkin lebih baik untuk bertanya siapa yang bertanggung jawab atas proyek, versi JDK mana yang lebih disukai untuk mengkompilasi sumber.

Tharkius
sumber
0

Saya juga memiliki masalah yang sama di IntellijIdea, setelah memilih proyek, lalu File> ProjectStructure> ProjectSettings> Modul -> sumber pilihan ditampilkan - Tingkat Bahasa ditetapkan pada 9:

Jadi, saya hanya mengubahnya menjadi 8. Tetap saja masalah saya tidak dapat diselesaikan.

Masalah utama adalah dengan pom.xml. Saya mengimpor kembali file pom.xml dan masalah saya terselesaikan.

Jadi, setiap kali Anda mengubah file pom.xml, IDEA perlu memperbarui struktur proyek. Misalnya jika Anda telah menambahkan beberapa dependensi di sana, IDEA perlu menambahkannya sebagai pustaka proyek.

Dalam "Pengaturan> Bangun, Eksekusi, Penempatan> Bangun Alat> Maven> Mengimpor" Anda dapat memilih "Impor proyek Maven secara otomatis". Ini secara otomatis akan memanggil tindakan "Masukkan kembali" ketika pom.xml diubah.

masukkan deskripsi gambar di sini

amitsahu86
sumber
0

Gradle I memiliki masalah yang sama dan mengubah semua pengaturan yang diberikan dalam solusi sebelumnya tidak membuat perbedaan. Kemudian saya pergi ke build.gradle dan menemukan baris ini dan menghapusnya.

sourceCompatibility = '11'

dan itu berhasil! :)

likejudo
sumber
0

Saya mengalami masalah ini saat menjalankan proyek SpringBoot (Maven)

Dalam file POM saya, saya mengubah versi java dari 11 menjadi 8 dan berhasil:

<properties>
    <java.version>8</java.version> //The default was 11
</properties>

Pastikan tidak Load maven changesada perubahan yang terjadi.

Ojonugwa Jude Ochalifu
sumber