cari
RumahJavajavaTutorialBagaimanakah anda menentukan versi Java dalam Maven untuk modul kanak-kanak: pemalam sifat vs. pengkompil?

How do you specify Java version in Maven for child modules: properties vs. compiler plugin?

Menentukan Versi Java dalam Maven: Membandingkan Sifat dan Pemalam Pengkompil

Pengenalan

Apabila bekerja dengan Maven, nyatakan Java versi untuk modul kanak-kanak dalam projek berbilang modul memerlukan pertimbangan. Artikel ini mengkaji perbezaan antara menetapkan versi Java menggunakan sifat Java dan pemalam pengkompil Maven.

Menetapkan Versi Java Menggunakan Sifat

Sifat java.version dalam bahagian pom.xml direka untuk digunakan dengan Spring Boot dan menetapkan kedua-dua sumber dan versi Java sasaran:

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

Menetapkan Versi Java Menggunakan Pemalam Pengkompil

Pemalam pengkompil Maven menyediakan dua pilihan: menentukan versi sumber dan sasaran atau menggunakan "keluaran" hujah.

  • Sumber dan Sasaran:
<plugins>
    <plugin>
        <artifactid>maven-compiler-plugin</artifactid>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>
</plugins>

Ini bersamaan dengan menggunakan yang berikut sifat:

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
  • Keluaran:

Dari Maven 3.6 dan seterusnya, hujah keluaran boleh digunakan untuk menentukan Java versi:

<properties>
    <maven.compiler.release>9</maven.compiler.release>
</properties>

Perbezaan

  • Sumber dan Sasaran lwn. Sifat: Ia adalah setara dari segi fungsi.
  • Keluaran: Dalam Maven 3.8 dan ke atas, ia menyediakan cara piawai untuk menentukan ketiga-tiga versi (sumber, sasaran dan bootstrap) untuk Java 9 dan kemudian.
  • Spring Boot: java.version hanya berfungsi dalam projek Spring Boot.

Amalan Terbaik

Untuk Java 8 dan di bawah:

  • Gunakan salah satu kaedah untuk menentukan sumber dan sasaran.
  • Jika hanya sumber ditentukan, Maven boleh menggunakan versi sasaran yang berbeza berdasarkan sumber yang ditentukan.

Untuk Java 9 dan ke atas:

  • Pertimbangkan untuk menggunakan hujah keluaran untuk memastikan versi yang konsisten untuk sumber, sasaran, dan bootstrap.

fork, executable dan JAVA_HOME

  • Jika versi JAVA_HOME JDK tidak serasi dengan versi Java yang ditentukan, nyatakan fork=" benar" dan boleh laksana dalam konfigurasi pengkompil.
  • Ia adalah tidak disyorkan untuk versi sumber dan sasaran melebihi versi JDK yang ditunjukkan oleh JAVA_HOME, kerana JDK tidak boleh menyusun dengan spesifikasi yang lebih terkini.

Atas ialah kandungan terperinci Bagaimanakah anda menentukan versi Java dalam Maven untuk modul kanak-kanak: pemalam sifat vs. pengkompil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)