1. Gambaran keseluruhan
Dalam tutorial ringkas ini, kami akan menunjukkan cara menetapkan versi Java di Maven .
Sebelum melangkah ke hadapan, kita dapat memeriksa versi JDK Maven lalai . Menjalankan perintah mvn -v akan menunjukkan versi Java di mana Maven berjalan.
2. Gunakan Compiler Plugin
Kita dapat menentukan versi Java yang diinginkan dalam plugin kompiler.
2.1. Pemalam Penyusun
Pilihan pertama adalah menetapkan versi dalam sifat pemalam penyusun:
1.8 1.8
Penyusun Maven menerima perintah ini dengan versi - target dan - sumber . Sekiranya kita ingin menggunakan fitur bahasa Java 8, sumbernya harus ditetapkan ke 1.8 .
Juga, untuk kelas yang dikompilasi agar serasi dengan JVM 1.8, nilai - sasaran haruslah 1.8 .
Nilai lalai untuk kedua-duanya adalah versi 1.6.
Sebagai alternatif, kita boleh mengkonfigurasi pemalam penyusun secara langsung:
maven-compiler-plugin 1.8 1.8
The Maven-penyusun-plugin juga mempunyai ciri-ciri konfigurasi tambahan yang membolehkan kita untuk mempunyai lebih kawalan ke atas proses penyusunan luar -Sumber dan -target versi.
2.2 Java 9 dan Selebihnya
Selanjutnya, bermula dari versi JDK 9, kita dapat menggunakan pilihan baris perintah -rilis yang baru . Argumen baru ini secara automatik akan mengkonfigurasi pengkompil untuk menghasilkan fail kelas yang akan bertautan terhadap pelaksanaan versi platform yang diberikan.
Secara lalai, pilihan -sumber dan -target tidak menjamin penyusunan silang .
Ini bermaksud bahawa kita tidak dapat menjalankan aplikasi kita pada versi platform yang lebih lama. Selain itu, untuk menyusun dan menjalankan program untuk versi Java yang lebih lama, kita juga perlu menentukan pilihan -bootclasspath .
Untuk menyeberangi-menyusun dengan betul, baru -release pilihan menggantikan tiga bendera: -Sumber, -target dan -bootclasspath .
Setelah mengubah contoh kami, untuk sifat pemalam kami dapat menyatakan:
7
Dan untuk maven-compiler-plugin bermula dari versi 3.6 kita boleh menulis:
org.apache.maven.plugins maven-compiler-plugin 3.8.0 7
Seperti yang kita perhatikan, kita dapat menambahkan versi Java yang baruatribut . Dalam contoh ini, kami menyusun aplikasi kami untuk Java 7.
Lebih-lebih lagi, kami tidak memerlukan JDK 7 yang dipasang di mesin kami. Java 9 sudah mengandungi semua maklumat untuk menghubungkan ciri bahasa baru dengan JDK 7.
3. Spesifikasi Spring Boot
Aplikasi Spring Boot menentukan versi JDK di dalam tag sifat dalam fail pom.xml .
Pertama, kita perlu menambahkan spring-boot-starter-parent sebagai ibu bapa untuk projek kita:
org.springframework.boot spring-boot-starter-parent
POM induk ini membolehkan kami mengkonfigurasi plugin lalai dan banyak sifat termasuk versi Java: Secara lalai, versi Java adalah 1.8 .
Walau bagaimanapun, kita boleh mengganti versi lalai induk dengan menentukan sifat java.version :
1.9
Dengan menetapkan properti java.version, kami menyatakan bahawa sumber dan versi Java sasaran sama dengan 1.9 .
Yang terpenting, kita harus ingat bahawa harta tanah ini adalah Spesifikasi Boot Musim Semi. Selain itu, bermula dari Spring Boot 2.0, Java 8 adalah versi minimum.
Ini bermakna kita tidak dapat menggunakan atau mengkonfigurasi Spring Boot untuk versi JDK yang lebih lama.
4. Kesimpulan
Tutorial cepat ini menunjukkan kemungkinan cara menetapkan versi Java dalam projek Maven kami.
Ringkasnya:
- Menggunakan hanya boleh dilakukan dengan aplikasi Spring Boot
- Bagi kes-kes mudah maven.compiler.source dan maven.compiler.target hartanah perlu menjadi yang terbaik-fit
- Akhirnya, untuk mempunyai lebih banyak kawalan ke atas proses penyusunan, gunakan tetapan konfigurasi maven-compiler-plugin