Menggunakan IntelliJ IDE tidak dapat mengkompilasi proyek apa pun. Tangkapan layar pengaturan di bawah ini:
JDK yang digunakan:
Tingkat SDK dan Bahasa Proyek:
Tingkat Bahasa:
Adakah yang punya ide?
Menggunakan IntelliJ IDE tidak dapat mengkompilasi proyek apa pun. Tangkapan layar pengaturan di bawah ini:
JDK yang digunakan:
Tingkat SDK dan Bahasa Proyek:
Tingkat Bahasa:
Adakah yang punya ide?
Jawaban:
Jika Anda menggunakan Maven
Tambahkan plugin kompiler ke pom.xml
bawah project
simpul tingkat atas :
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
(Diangkat dari komentar.)
Catatan: Jika Anda tidak keberatan mengimpor kembali proyek Anda, maka satu-satunya hal yang benar-benar perlu Anda lakukan adalah mengubah pom dan mengimpor kembali proyek, maka IntelliJ akan mengambil pengaturan yang benar dan Anda tidak perlu mengubahnya secara manual.
Project Structure -> Project Settings -> Modules -> Denpendencies -> Module SDK
.
Ini terlihat seperti jenis kesalahan yang Maven hasilkan ketika Anda tidak memiliki plugin kompilator yang dikonfigurasi dengan benar. Berikut adalah contoh dari konfigurasi compiler Java 8.
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<!-- ... -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<!-- ... -->
</project>
project
, build
dan kemudian plugins
.
<source>1.8</source>
dan <target>1.8</target>
dikonfigurasi, kesalahan di atas dapat terjadi.
java compiler
Di jendela Pengaturan, tetapkan Target bytecode ke 1.8
(atau 9 untuk java9)
Ada dua cara untuk mengatasi masalah ini:
Banyak jawaban tentang Maven benar tetapi Anda tidak perlu mengkonfigurasi plugin secara langsung.
Seperti yang dijelaskan pada halaman wiki Plugin Apache Maven Compiler, Anda hanya dapat mengatur 2 properti yang digunakan oleh plugin.
<project>
[...]
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
[...]
</project>
org.apache.maven.plugins:maven-compiler-plugin
di file pom atau gradle Anda, yang ingin dikatakan dalam dokumentasi adalah bahwa memiliki properti yang diset di properti pom akan cukup, pada dasarnya karena mereka menetapkan nilai default plugin, misalnya <source> $ { maven.compiler.source} </source>
Saya memperbaikinya dengan pergi ke Struktur Proyek -> Modul , cari modul yang dimaksud, klik pada tab Ketergantungan , ubah Module SDK
ke Project SDK
.
Saya memperbaikinya hanya dengan mengubah versi kompilasi target menjadi 1.8. Di:
File >> Pengaturan >> Bangun, Eksekusi, Deployment >> Compiler >> Java Compiler
Dalam kasus saya, saya memperbaiki masalah ini dengan membuka file .iml proyek (terletak di folder root proyek dan memiliki nama yang sama dengan nama proyek) dan mengubah baris <orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />
ke<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
Saya telah mengkonfigurasi semuanya seperti pada jawaban orang lain di sini, tetapi karena suatu alasan Gagasan memperbarui file .iml secara tidak benar.
Saya memperbaikinya dengan memodifikasi file POM saya. Perhatikan komentar terakhir di bawah jawaban pilihan tertinggi.
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
Sumber harus sesuai dengan target.
Dalam file tingkat aplikasi Gradle >> compileOptions Anda tambahkan dua baris ini
android {
compileOptions {
...
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
...
}
}
Di bawah file compiler.xml Anda akan menemukan:
<bytecodeTargetLevel>
<module name="your_project_name_main" target="1.8" />
<module name="your_project_name_test" target="1.8" />
</bytecodeTargetLevel>
dan Anda dapat mengubah nilai target dari yang lama ke yang baru untuk saya, saya perlu mengubahnya dari 1,5 menjadi 1,8
Bagi saya, masalahnya adalah tentang Maven tidak dapat menemukan konfigurasi yang tepat, karena item-item ini ditentukan dalam pom induk.
Mengubah File -> Pengaturan -> Build, Eksekusi, Deployment -> Maven -> File Pengaturan Pengguna untuk menunjuk ke pengaturan kustom saya dengan repositori yang tepat memperbaiki masalah yang sebelumnya bersembunyi.
Mengetahui masalah melalui Bantuan -> Tampilkan login di explorer -> mengklik file log, ketika sebelumnya hanya mendapat kesalahan dalam judul dan "java.lang.NullPointerException" di konsol.
Dengan Intellij , menggunakan Maven , Anda harus memeriksa apakah Intellij telah mengimpor proyek Anda secara otomatis. Anda dapat memeriksa dengan mengklik tab Maven di sebelah kanan Editor Anda.
Jika Proyek Anda tidak ada di sini, maka tambahkan pom.xml
file dengan mengklik +
.
Jelas, proyek juga harus memiliki yang relevan <build/>
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
Jika tidak ada jawaban lain yang berfungsi, periksa Modul SDK Anda .
Saya memiliki kesalahan ini muncul untuk saya setelah saya memperbarui proyek SDK ke 1.8, kompiler Javac ke 1.8, dll. Pengaturan yang menjadi masalah bagi saya adalah "Modul SDK".
(di Linux) Buka File > Project Structure...
kemudian di jendela yang terbuka, pilih di Modules
bawah Project Settings
. Pilih modul yang dimaksud dari daftar dan kemudian Dependencies
tab dan pastikan yang Module SDK
diatur dengan tepat.