2011-05-02 4 views
25

मेरे पास एक विशेष निर्देशिका में सैकड़ों जार हैं जो मेरा एप्लिकेशन उपयोग करता है। इसलिए मैंने सोचा कि प्रत्येक जार को एक-एक करके कक्षा में जोड़ना मुश्किल है। तो क्या कोई आदेश या कोई रास्ता है ताकि मैं एक ही समय में सभी जार जोड़ सकूं। कुछ *.jar सभी जार जोड़ना चाहिए।क्लासस्पैट में किसी विशेष निर्देशिका में मौजूद सभी जार कैसे शामिल करें?

+0

एक उदाहरण "... \ java_project \ jar \ *;" जोड़ना होगा अपने कक्षा के लिए। महत्वपूर्ण हिस्सा यह है कि फ़ोल्डर के नाम के बाद, आप बैकस्लैश और स्टार शामिल करते हैं। – xxjjnn

उत्तर

25

हां, आप Java6 के रूप में wildcard का उपयोग कर सकते हैं। पर अनुभाग देखें "समझौता वर्ग पथ वाइल्डकार्ड"

कक्षा पथ प्रविष्टियों basename वाइल्डकार्ड वर्ण *, जो निर्देशिका में .jar या .JAR विस्तार के साथ सभी फ़ाइलों की एक सूची निर्दिष्ट करने के लिए समकक्ष माना जाता है शामिल कर सकते हैं । उदाहरण के लिए, कक्षा पथ प्रविष्टि foo/* foo नाम की निर्देशिका में सभी JAR फ़ाइलों को निर्दिष्ट करती है। * की एक क्लासपाथ प्रविष्टि वर्तमान निर्देशिका में सभी जार फ़ाइलों की एक सूची में फैली हुई है।

जावा 6 से पहले, आपको उन्हें सभी को अलग-अलग निर्दिष्ट करना था।

+6

यह सही है, जब तक आप "क्लासस्पैट पर्यावरण चर" या "क्लासपाथ (या -cp) कमांड लाइन विकल्प" का उपयोग कर रहे हैं। MANIFEST.MF का उपयोग करते समय दर्द शुरू होता है: "हालांकि, क्लास पथ वार्डकार्ड क्लास-पथ जार-मेनिफेस्ट हेडर में सम्मानित नहीं होते हैं।" – bobndrew

+0

मेरे लिए काम नहीं करता है, विंडोज 10, ने भी "foo/*" और foo/"*" – Genry

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