Перенесите проект Java на Java 11 и нажмите ниже “ошибка класса не найдена для исключения jaxbex
“
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
Краткая история JAXB на Java XML-привязка Джакарта (JAXB; ранее Java-архитектура для привязки XML) – это структура привязки XML для преобразования классов Java в XML и из XML.
- JAXB является частью Java 6, 7 и 8.
- Java 9 устарела для модулей Java EE, включая пакеты JAXB
javax.xml . *
. - API-интерфейсы JAXB все еще устарели в Java 10.
- Java 11 удалила API-интерфейсы JAXB
javax.xml . *
полностью. - Oracle отправила Java EE в Eclipse Foundation и переупаковала его в
jakarta.xml . *
начиная с версии 3.0.
Решение
Чтобы запустить JAXB на Java 9 и выше, мы должны вручную включить зависимости JAXB API и RI.
Существует две стандартные реализации JAXB; выберите любую из них, чтобы решить вышеприведенную “ошибка класса не найдена для исключения JAXBEX
“.
Привязка XML Джакарты
Начиная с JAXB версии 3 и выше, пакет изменен с javax.xml . *
для jakarta.xml . *
.
jakarta.xml.bind jakarta.xml.bind-api 3.0.0 com.sun.xml.bind jaxb-impl 3.0.0 runtime
Если мы все еще предпочитаем старые пакеты JAXB javax.xml . *
, придерживайтесь версии JAXB 2.x.
jakarta.xml.bind jakarta.xml.bind-api 2.3.3 com.sun.xml.bind jaxb-ri 2.3.3
Эклипслинк Мокси
jakarta.xml.bind jakarta.xml.bind-api 3.0.0 org.eclipse.persistence org.eclipse.persistence.moxy 3.0.0
Примечание Аналогичная ошибка – Реализация JAXB-API не найдена в пути к модулю или пути к классу
Скачать Исходный Код
$клон git $клон git
$компакт-диск java-xml
$cd src/основной/java/com/mkyong/xml/jaxb$cd src/основной/java/com/mkyong/xml/jaxb/
Рекомендации
- Спецификация JAXB JSR-222
- Википедия – Джакарта EE
- Привязка XML ВИкипедии – Джакарты
- Привязка XML Джакарты
- Пример JAXB привет, мир
- Исключение JAXBException: Реализация JAXB-API не найдена в пути к модулю или пути к классу
- java.lang. Исключение ClassNotFoundException: com.sun.xml.привязка.v2.ContextFactory
Оригинал: “https://mkyong.com/java/java-lang-noclassdeffounderror-javax-xml-bind-jaxbexception/”