2017-03-20 15 views
5

मैं एक सर्वर किट है कि मैं java9 JDK पर परीक्षण करने के लिए कोशिश कर रहा हूँ है (here पाया, मैं 64-बिट लिनक्स संस्करण का उपयोग कर रहा), फिर भी मैं शीघ्र ही स्टार्टअप के बाद निम्न त्रुटि का सामना कर रहा हूँ:मैं रनटाइम पर जावा 9 मॉड्यूल कैसे शामिल करूं?

java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException 

Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:533) 
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:186) 
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:476) 

जावा 8 का उपयोग करते समय सर्वर किट बिना किसी समस्या के शुरू होता है। किसी भी तरह मुझे javax.xml.bind मॉड्यूल को शामिल करने के लिए रनटाइम सिस्टम को बताने की ज़रूरत है, हालांकि मैं जावा 9 के लिए नया हूं और यह नहीं जानता कि पूरे सर्वर किट को मॉड्यूल में दोबारा जोड़ने और javax.xml.bind मॉड्यूल पर निर्भरता जोड़ने के लिए यह कैसे कम करें। क्या इस त्रुटि को हल करने का कोई तरीका है जिसके लिए मुझे सर्वर किट को मॉड्यूल में पुन: संकलित करने की आवश्यकता नहीं है?

+4

क्या आप '-add-modules java.xml.bind' के साथ चलने का प्रयास कर सकते हैं? – Nicolai

+1

@ निकोलई धन्यवाद, जिसने समस्या को ठीक किया - यदि आप कोई उत्तर खोलते हैं तो मैं इसे स्वीकार करूंगा –

उत्तर

8

जावा ईई मॉड्यूल जेडीके के साथ भेज दिए जाते हैं लेकिन not resolved by default और java.xml.bind उनमें से एक है। ऐसे मामलों में उन्हें --add-modules के साथ स्पष्ट रूप से शामिल करने की आवश्यकता है।

अपने मामले में, --add-modules java.xml.bind के साथ लॉन्च करें।

संबंधित मुद्दे