2013-02-04 14 views
9

प्रसंस्करण में, मैं जावा में लिखी गई एक लाइब्रेरी आयात करना चाहता हूं जो बाहरी पुस्तकालय (ए .jar फ़ाइल) के आसपास लपेटता है।बाहरी जार निर्भरताओं के साथ ग्रहण परियोजना को कैसे निर्यात करें?

प्रसंस्करण मेरी अपनी लाइब्रेरी आयात करने के लिए प्रतीत होता है, लेकिन जब मैं कन्स्ट्रक्टर (बाहरी पुस्तकालय में कुछ कक्षाओं का संदर्भ देता हूं) कहता हूं, तो मुझे प्रोसेसिंग जीयूआई कंसोल में java.lang.NoClassDefFoundError मिलता है।

यदि मेरे ग्रहण बिल्डपैथ में बाहरी .jar शामिल करने की बजाय, मैं लाइब्रेरी के वास्तविक स्रोत कोड का उपयोग करता हूं और उन सभी को निर्यात करता हूं, प्रोसेसिंग शिकायत नहीं करता है।

मैं इस प्रोजेक्ट को कैसे पैकेज कर सकता हूं ताकि मुझे अपने ग्रहण प्रोजेक्ट में सभी लाइब्रेरी के स्रोत कोड (और इसके बजाय केवल .jar फ़ाइल शामिल न करें) शामिल करने की आवश्यकता न हो?


अद्यतन: प्रति N.L.telaviv के सुझाव के रूप में, मैं एक Runnable JAR के रूप में निर्यात करने के लिए चुना है। मेरे लिए क्या काम किया गया था "जेनरेटेड जेएआर के बगल में एक उप-फ़ोल्डर में आवश्यक लाइब्रेरी कॉपी करें" विकल्प का चयन करना था। यहां, एक और फ़ोल्डर बनाया गया है जहां आपका .jar संदर्भित .jar पुस्तकालयों वाला आउटपुट है।

अद्यतन 2: दूसरा विकल्प जो काम करता है "उत्पन्न जेएआर में आवश्यक पुस्तकालय निकालें।" ऐसा करने से जेएआर आंतरिक रूप से संदर्भों तक पहुंचने की अनुमति देता है। ऐसा प्रतीत होता था कि वही एन.एल.टेलाविव के सुझाव के साथ काम करता था, लेकिन ऐसा लगता है कि यह मामला नहीं है। यदि आप कोई अतिरिक्त फाइल नहीं चाहते हैं तो यह विकल्प चुनें। यदि आप .JAR फ़ाइल का पता लगाते हैं, तो आप देखेंगे कि बाहरी लाइब्रेरी एक अलग पैकेज फ़ोल्डर में है।

+0

हाय में पुस्तकालयों की आवश्यकता है, मैं इन सभी विकल्पों choosed है, लेकिन कोई भी मेरे लिए काम कर रहा था। क्या आप मुझे बता सकते हैं कि समस्या क्या होगी? धन्यवाद! –

उत्तर

6

रननेबल जेएआर फ़ाइल निर्यात विकल्प का उपयोग करें। निर्यात - - जावा runnable जार फ़ाइल - अपनी परियोजना पर

क्लिक पैक करने के लिए विकल्प का चयन जार

+0

बस कोशिश की, कोई भाग्य नहीं। यहां एकमात्र अंतर यह था कि MyProjectPackage आयात करने के साथ। *, प्रसंस्करण भी org.eclipse.jdt.internal.jarinjarloader आयात करता है। * – funseiki

+0

जांचें कि मैनिफ़ेस्ट में कक्षा पथ परिभाषा में प्रत्येक JAR है – Nimrod007

+0

क्या आप क्लासपाथ का जिक्र कर रहे हैं फाइल? यदि ऐसा है, तो उसके पास .jar है। मैंने यह भी पाया कि जेनरेट किए गए जार में पैकेज करने का विकल्प चुनने के बजाय, अगर मैं जेनरेट किए गए जेएआर के बगल में एक उप-फ़ोल्डर में आवश्यक लाइब्रेरी कॉपी करता हूं, तो यह काम करता प्रतीत होता है। – funseiki

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

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