Maison >Java >javaDidacticiel >Comment résoudre le problème « javax.xml.bind » dans Java 11 ?

Comment résoudre le problème « javax.xml.bind » dans Java 11 ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-06 00:20:02745parcourir

How to Resolve the `javax.xml.bind` Issue in Java 11?

Problème javax.xml.bind en Java 11

Comment résoudre le problème selon lequel le package javax.xml.bind n'existe pas en Java 11 ?

Selon la documentation de la version, Java 11 a supprimé les modules Java EE :

  • java.xml.bind (JAXB) - Supprimé

J'ai réussi le problème peut être résolu en utilisant une version alternative de la technologie Java EE. Ajoutez simplement les dépendances Maven contenant les classes requises :

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

Mise à jour Jakarta EE 8 (mars 2020)

Il est possible d'utiliser Jakarta EE 8 Jakarta XML Binding à la place de l'ancien module JAXB :

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

Mise à jour de Jakarta EE 9 (novembre 2020)

Utilisation de Jakarta XML Binding 3.0 Dernière version :

  • API Jakarta EE 9 jakarta.xml.bind-api
  • implémentation compatible jaxb-impl
<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>

Remarque : Jakarta EE 9 adopte le nouvel espace de noms du package API jakarta.xml.bind.*, veuillez donc mettre à jour la déclaration d'importation :

javax.xml.bind -> jakarta.xml.bind

Mise à jour Jakarta EE 10 (2022-6 mois)

Utilisez la dernière version de Jakarta XML Binding 4.0 (nécessite Java SE 11 ou supérieur) :

  • API Jakarta EE 10 jakarta.xml.bind-api
  • Implémentation compatible de jaxb- impl
<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>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn