Rumah >Java >javaTutorial >Mengapa pakej javax.xml.bind ditamatkan dalam Java 11?

Mengapa pakej javax.xml.bind ditamatkan dalam Java 11?

Patricia Arquette
Patricia Arquetteasal
2024-11-08 16:16:01515semak imbas

Why is the javax.xml.bind package deprecated in Java 11?

Java 11 Package javax.xml.bind is Deprecated

Dalam Java 8, pakej javax.xml.bind mengandungi Java Architecture untuk Kelas XML Binding (JAXB), yang membenarkan pembangun mensiri dan menyahsiri objek Java ke dan dari XML. Walau bagaimanapun, dalam Java 11, pakej javax.xml.bind telah dialih keluar.

Mengapa javax.xml.bind dialih keluar dalam Java 11?

Javax. Pakej xml.bind ialah sebahagian daripada modul Java EE (Enterprise Edition). Dalam Java 11, Oracle mengalih keluar modul Java EE, termasuk javax.xml.bind. Ini adalah sebahagian daripada usaha yang lebih besar untuk memodulasi platform Java dan menjadikannya lebih ringan.

Bagaimana untuk menyelesaikan isu tersebut?

Terdapat dua cara untuk menyelesaikan isu tersebut :

1. Gunakan versi ganti teknologi Java EE.

Oracle telah mengeluarkan versi ganti teknologi Java EE, termasuk JAXB, yang boleh digunakan dengan Java 11. Untuk menggunakan versi ganti ini, anda perlu menambah kebergantungan Maven berikut pada projek anda:

<code class="xml"><dependency>
  <groupId>javax.xml.bind</groupId>
  <artifactId>jaxb-api</artifactId>
  <version>2.3.0</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-core</artifactId>
  <version>2.3.0</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-impl</artifactId>
  <version>2.3.0</version>
</dependency></code>

2. Gunakan Jakarta XML Binding.

Jakarta XML Binding ialah pelaksanaan baharu spesifikasi JAXB yang merupakan sebahagian daripada platform Jakarta EE. Jakarta XML Binding serasi sepenuhnya dengan JAXB, dan ia boleh digunakan sebagai pengganti drop-in untuk javax.xml.bind. Untuk menggunakan Jakarta XML Binding, anda perlu menambah kebergantungan Maven berikut pada projek anda:

<code class="xml"><dependency>
  <groupId>jakarta.xml.bind</groupId>
  <artifactId>jakarta.xml.bind-api</artifactId>
  <version>2.3.3</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-impl</artifactId>
  <version>2.3.3</version>
  <scope>runtime</scope>
</dependency></code>

Nota: Versi terkini Jakarta XML Binding ialah 3.0.0. Untuk menggunakannya, gantikan versi pergantungan dalam coretan kod di atas dengan 3.0.0.

Atas ialah kandungan terperinci Mengapa pakej javax.xml.bind ditamatkan dalam Java 11?. 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