首頁 >Java >java教程 >為什麼 Java 11 中不建議使用 javax.xml.bind 套件?

為什麼 Java 11 中不建議使用 javax.xml.bind 套件?

Patricia Arquette
Patricia Arquette原創
2024-11-08 16:16:01525瀏覽

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

Java 11 套件javax.xml.bind 已棄用

在Java 8 中,套件javax.xml.bind 包含以下Java 架構: XML 綁定(JAXB) 類,允許開發人員將Java 物件序列化為XML 或反序列化為XML。然而,在 Java 11 中,javax.xml.bind 套件已被刪除。

為什麼 javax.xml.bind 在 Java 11 中被刪除?

javax.xml.bind 套件被刪除了。 xml.bind 套件是 Java EE(企業版)模組的一部分。在 Java 11 中,Oracle 刪除了 Java EE 模組,包括 javax.xml.bind。這是模組化 Java 平台並使其更加輕量級的更大努力的一部分。

如何解決這個問題?

有兩種方法可以解決這個問題:

1。使用 Java EE 技術的備用版本。

Oracle 已發布了可與 Java 11 一起使用的 Java EE 技術的備用版本,包括 JAXB。要使用這些備用版本,您需要新增將以下 Maven 依賴項新增至您的專案:

<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.使用 Jakarta XML Binding。

Jakarta XML Binding 是 JAXB 規範的新實現,是 Jakarta EE 平台的一部分。 Jakarta XML Binding 與 JAXB 完全相容,並且可以用作 javax.xml.bind 的直接替代品。要使用 Jakarta XML Binding,您需要將以下 Maven 依賴項新增至您的專案:

<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>

注意: Jakarta XML Binding 的最新版本是 3.0.0。要使用它,請將上述程式碼片段中的依賴版本替換為 3.0.0。

以上是為什麼 Java 11 中不建議使用 javax.xml.bind 套件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn