Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menentukan Versi Java dalam Maven: Properties vs. Compiler Plugin?

Bagaimana untuk Menentukan Versi Java dalam Maven: Properties vs. Compiler Plugin?

Susan Sarandon
Susan Sarandonasal
2024-11-12 10:38:01893semak imbas

How to Specify Java Version in Maven: Properties vs. Compiler Plugin?

Menentukan versi Java dalam Maven: Properties vs. Compiler Plugin

Spesifikasi versi Java dalam Maven membenarkan menetapkan versi JDK yang diperlukan untuk penyusunan projek. Terdapat tiga cara utama untuk melakukan ini: menggunakan ciri Spring Boot, pemalam pengkompil Maven dengan sumber dan sasaran, atau pemalam pengkompil Maven dengan keluaran.

But Musim Bunga (Tidak disyorkan untuk kegunaan umum)

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

Kaedah ini tersedia secara eksklusif untuk projek Spring Boot.

Maven Compiler Pemalam dengan sumber dan sasaran

<plugins>
    <plugin>    
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>
</plugins>

Kaedah ini menetapkan sumber dan sasaran versi JDK secara eksplisit.

Pemalam Pengkompil Maven dengan keluaran

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

Kaedah ini menentukan hujah keluaran, yang menetapkan versi JDK secara seragam untuk sumber, sasaran dan pilihan bootstrap.

Perbezaan antara Properties dan Compiler Plugin

1. Sumber dan Sasaran:

  • Sifat maven-compiler-plugin dan maven.compiler.source/maven.compiler.target menghasilkan hasil yang setara.

2. Nilai Lalai:

  • Kedua-dua kaedah menetapkan sumber lalai dan versi sasaran berdasarkan versi pemalam pengkompil Maven.

3. Keserasian Versi Java:

  • Versi Java yang ditentukan tidak boleh melebihi versi JDK yang dirujuk oleh JAVA_HOME.

4. Invokasi Pemalam Pengkompil:

  • Maven secara automatik menyertakan pemalam pengkompil Maven untuk penyusunan, walaupun tidak diisytiharkan secara eksplisit dalam pom.xml.

Yang Cara Menggunakan?

Untuk Java 8 dan Di bawah:

Gunakan sama ada sifat maven.compiler.source/maven.compiler.target atau pemalam pengkompil Maven.

Dari Java 9 dan Ke Atas:

Pertimbangkan untuk menggunakan hujah keluaran jika anda ingin menetapkan satu versi untuk sumber, sasaran dan bootstrap.

Pilihan Penyusunan Silang

Jika JDK yang dirujuk oleh JAVA_HOME tidak serasi dengan versi Java yang ditentukan, anda boleh menyediakan versi pengkompil yang serasi secara eksplisit dan boleh laku:

<configuration>
    <source>1.8</source>
    <target>1.8</target>
    <compilerVersion>1.8</compilerVersion>      
    <fork>true</fork>
    <executable>D:\jdk1.8\bin\javac</executable>                
</configuration>

Kesimpulan

Pilihan kaedah bergantung pada keperluan khusus dan persediaan projek. Setiap kaedah menyediakan pilihan yang berbeza untuk menentukan versi Java dan mengendalikan senario kompilasi silang. Walau bagaimanapun, adalah penting untuk memastikan keserasian antara versi yang ditentukan dan JDK yang dipasang untuk penyusunan yang berjaya.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Versi Java dalam Maven: Properties vs. Compiler Plugin?. 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