Java 11 e come riparare java.lang. TypeNotPresentException: digitare javax.xml.bind.JAXBContext Exception?

Pubblicato: 2018-12-15

Java11 e javax.xml.bind.JAXBContext Eccezione

Stai affrontando java.lang.TypeNotPresentException : Digita javax.xml.bind.JAXBContext non presente eccezione?

Oggi durante l'esecuzione del mio servizio RESTful sul mio Eclipse ho notato l'errore javax.xml.bind.JAXBContext nella mia console Eclipse. Lo stesso programma funzionava perfettamente dall'anno scorso senza alcun problema.

Ho iniziato a pensare ai cambiamenti avvenuti nel mio ambiente locale. Non è stato eseguito alcun controllo del codice dall'anno scorso, quindi ho pensato che fosse principalmente a causa del mio ultimo aggiornamento a Java 11.

Come puoi vedere nel mio precedente Tutto su Java 11, non c'è più il supporto per i moduli Java EE in esso. Java 11 ha rimosso il supporto per java.xml.bind , che definisce l'API Java Architecture for XML Binding (JAXB).

La sua è una traccia completa dello stack:

E questo è il motivo per cui ho iniziato a superare l'eccezione. Il pacchetto Java 11 per javax.xml.bind non esiste più.

  • Versione Java 7: inclusa e funzionante
  • Versione Java 8: inclusa e funzionante
  • Versione Java 9: ​​obsoleta
  • Versione Java 10: obsoleta
  • Versione Java 11: rimossa

Per risolvere questo problema, devi aggiungere manualmente le dipendenze JAXB Maven sotto al tuo progetto.

Ecco il mio file pom.xml completo, se necessario:

Prova a pulire il tuo progetto Eclipse e prova a eseguire di nuovo il tuo server Tomcat. Non dovresti più vedere questo problema.

Buona codifica e fammi sapere se affronti ancora questa eccezione dopo aver aggiunto sopra le dipendenze Maven.