2012-03-08 15 views
5

मैं जानना चाहता हूं कि प्रति जार की अधिकतम संख्या में फाइलें हैं या नहीं, जिसके बाद कक्षाओं जैसे क्लासपाथ मुद्दों को ध्यान में रखा जा सकता है?प्रति जार की अधिकतम संख्या में फाइलें क्या हैं?

+0

क्या यह आपके प्रश्न के समान है? http://stackoverflow.com/questions/3057841/too-long-line-in-manifest-file-while-trying-to-create-jar –

+0

कोई भी लिंक क्लासपाथ लंबाई से संबंधित नहीं है –

+0

फ़ाइलें या जावा कक्षाएं? – alexvetter

उत्तर

11

जार प्रारूप सिर्फ एक रिब्रांड किए गए ज़िप प्रारूप है, इसलिए इसे उस प्रारूप की सीमाएं प्राप्त होती हैं।

मूल ज़िप प्रारूप में 65535 प्रविष्टियों की एक सीमा है, इसलिए कुल जावा 6 और इससे पहले, आप अधिकतर कक्षाओं या अन्य फ़ाइलों को संयुक्त कर सकते हैं। कई टूल में निर्देशिकाएं भी शामिल होती हैं, और इससे कक्षाओं और अन्य फ़ाइलों के लिए उपलब्ध आग लग जाती है।

जावा 7, zip64 में बहुत अधिक सीमा के साथ समर्थित है।

मुझे विफलता मोड पर संदेह है, हालांकि, यादृच्छिक रूप से अनुपलब्ध फाइलें नहीं होंगी, लेकिन जार पीढ़ी के समय में विफलता होगी।

3

ए .jar फ़ाइल वास्तव में एक विशेष मैनिफेस्ट के साथ सिर्फ एक .zip फ़ाइल है। तो सीमा .zip फ़ाइलों

  • जावा 6 अप करने के लिए के रूप में ही कर रहे हैं, सामान्य ज़िप फ़ाइलों 4GB आकार और 65535 फ़ाइलों की एक अधिकतम के साथ समर्थित हैं,
  • जावा 7 के बाद से, ZIP64 स्वरूप है 16 एक्साबाइट क्षमता जैसे कुछ के साथ समर्थित है। वर्तमान हार्डवेयर के साथ यह सामान्य उपयोग के लिए प्रभावी रूप से असीमित है (यह इंटरनेट पर सभी सामग्री के आकार के बारे में है)
संबंधित मुद्दे