Heim > Java > javaLernprogramm > Warum ist das JAXB-Paket in Java 11 nicht mehr verfügbar?

Warum ist das JAXB-Paket in Java 11 nicht mehr verfügbar?

Linda Hamilton
Freigeben: 2024-11-05 10:10:02
Original
758 Leute haben es durchsucht

Why is the JAXB package no longer available in Java 11?

JAXB-Paket existiert in Java 11 nicht mehr

Einführung

Bei der Migration von Java 8 Bei Java 11 kann es bei Benutzern zu dem Kompilierungsfehler „Paket javax.xml.bind existiert nicht“ kommen. Dieser Fehler ist auf die Entfernung des Pakets javax.xml.bind (JAXB) in Java 11 zurückzuführen.

Ursache

Gemäß Java Enhancement Proposal (JEP) 320, Java 9 ist veraltet und Java 11 hat Java EE-Module, einschließlich JAXB, entfernt. Diese Änderung wurde vorgenommen, um die Editions- und Ökosystemstrategie von Java zu optimieren.

Lösung

Um das Problem zu beheben, können Sie alternative Versionen von Java EE-Technologien verwenden, indem Sie den folgenden Maven hinzufügen Abhängigkeiten zu Ihrem Projekt:

<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>
Nach dem Login kopieren

Jakarta EE 8 (März 2020) Update

Sie können auch Jakarta XML Binding von Jakarta EE 8 verwenden:

<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>
Nach dem Login kopieren

Jakarta EE 9 (November 2020) Update

Jakarta EE 9 brachte eine neuere Version der Jakarta XML Binding 3.0. So aktualisieren Sie Ihren Build:

  • Aktualisieren Sie die Jakarta EE 9 API auf jakarta.xml.bind-api
  • Aktualisieren Sie die kompatible Implementierung auf jaxb-impl Version 3.0.0:
<code class="xml"><dependency>
  <groupId>jakarta.xml.bind</groupId>
  <artifactId>jakarta.xml.bind-api</artifactId>
  <version>3.0.0</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-impl</artifactId>
  <version>3.0.0</version>
  <scope>runtime</scope>
</dependency></code>
Nach dem Login kopieren

Hinweis: jakarta.xml.bind erfordert Java 8 oder höher.

Jakarta EE 10 (Juni 2022) Update

Jakarta EE 10 bringt die neueste Version von Jakarta XML Binding 4.0. So aktualisieren Sie Ihren Build:

  • Aktualisieren Sie die Jakarta EE 10 API auf jakarta.xml.bind-api
  • Aktualisieren Sie die kompatible Implementierung auf jaxb-impl Version 4.0.0
<code class="xml"><dependency>
  <groupId>jakarta.xml.bind</groupId>
  <artifactId>jakarta.xml.bind-api</artifactId>
  <version>4.0.0</version>
</dependency>
<dependency>
  <groupId>com.sun.xml.bind</groupId>
  <artifactId>jaxb-impl</artifactId>
  <version>4.0.0</version>
  <scope>runtime</scope>
</dependency></code>
Nach dem Login kopieren

Hinweis: jakarta.xml.bind 4.0 erfordert Java SE 11 oder höher.

Das obige ist der detaillierte Inhalt vonWarum ist das JAXB-Paket in Java 11 nicht mehr verfügbar?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage