Avatar ·

كيفية إصلاح java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException في Java 9, 10, 11؟

مرحباً بالجميع! أنا مطور Java مبتدئ، أكتب تطبيقاً بسيطاً للعمل مع XML. أستخدم JAXB لتحويل الكائنات إلى XML والعكس. كان كل شيء يعمل بشكل رائع على Java 8، ولكن بعد الانتقال إلى Java 11 أحصل على الخطأ التالي عند التشغيل:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

إليك الكود الخاص بي:

import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;

public class XmlConverter {
    public static void main(String[] args) {
        try {
            JAXBContext context = JAXBContext.newInstance(User.class);
            Marshaller marshaller = context.createMarshaller();
            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
            
            User user = new User("إيفان", 25);
            marshaller.marshal(user, System.out);
        } catch (JAXBException e) {
            e.printStackTrace();
        }