Saya telah melihat pertanyaan serupa, tetapi belum menemukan jawabannya.
Menggunakan kompilasi maven, saya mendapatkan:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project api: Fatal error compiling: invalid target release: 1.7 -> [Help 1]
Inilah pom.xml tersebut:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
Versi Javac:
javac 1.7.0_25
Versi Java:
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Tahu apa itu?
mvn -version
. Ini akan memberi tahu Anda Java mana yang digunakannya.Jawaban:
Anda perlu menyetel JAVA_HOME ke direktori beranda jdk7 Anda, misalnya di Microsoft Windows:
atau di OS X:
sumber
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
source ~/.profile
Selain mengatur
JAVA_HOME
variabel lingkungan, Anda harus memastikan bahwa Anda menggunakan JDK yang benar dalam konfigurasi run Maven Anda. Pergi ke Run -> Run Configuration , pilih konfigurasi Maven Build Anda, buka tab JRE dan atur Runtime JRE yang benar.sumber
Di IntelliJ IDEA hal ini terjadi pada saya ketika saya mengimpor proyek yang telah bekerja dengan baik dan berjalan dengan Java 1.7. Sepertinya saya belum memberi tahu IntelliJ bahwa java 1.7 telah diinstal pada mesin saya, dan itu tidak menemukan milik saya
$JAVA_HOME
.Di Mac, ini diselesaikan dengan:
Klik kanan pada modul | Pengaturan Modul | Proyek
dan menambahkan 1.7 SDK dengan memilih "New" di Project SDK.
Lalu pergi ke menu utama IntelliJ IDEA | Preferensi | Maven | Pelari
dan pilih JRE yang benar. Dalam kasus saya itu diperbarui dengan benar Gunakan SDK Proyek, yang sekarang 1,7.
sumber
Ketika maven bekerja di luar Eclipse, tetapi memberikan kesalahan ini setelah perubahan JDK, Buka Konfigurasi Jalankan Maven Anda, dan di bagian bawah halaman Utama, ada opsi 'Maven Runtime'. Milik saya menggunakan Embedded Maven, jadi setelah mengubahnya menjadi menggunakan pakar eksternal saya, itu berhasil.
sumber
Ini mungkin berfungsi untuk banyak hal tetapi itu tidak cukup untuk Maven dan tentunya tidak untuk plugin compiler maven.
Periksa jawaban Mike untuk pertanyaannya sendiri di sini: pertanyaan stackoverflow 24705877
Ini memecahkan masalah bagi saya baik baris perintah DAN dalam gerhana.
Juga, @LinGao menjawab pertanyaan stackoverflow 2503658 dan penggunaan variabel $ JAVACMD mungkin membantu tetapi saya belum mengujinya sendiri.
sumber