Los módulos de “Java Architecture for XML Binding (JAXB) API” fueron eliminados en la versión 11 de Java. “JEP 320: Remove the Java EE and CORBA Modules” indica las razones de este cambio. Debido a esto al migrar de una versión anterior a Java 11 se deben agregar manualmente las dependencias del API y la implementación de JAXB. Dependiendo de la versión de Java EE o Jakarta EE las dependencias varían.
(solución para java.lang.ClassNotFoundException: javax.xml.bind.JAXBException)
Jakarta EE 8:
<!-- https://mvnrepository.com/artifact/jakarta.xml.bind/jakarta.xml.bind-api -->
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>2.3.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl -->
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.3</version>
</dependency>
Jakarta EE9 :
<!-- https://mvnrepository.com/artifact/jakarta.xml.bind/jakarta.xml.bind-api -->
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>3.0.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl -->
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>3.0.0</version>
</dependency>