2015-03-05 8 views
6

जावा 8 (jdk1.8.0_32) में, टाइमज़ोन फ़ाइलों (jre/lib/zi के तहत) नहीं हैं जैसे कि उदाहरण में हैं जावा 7u67।जावा 8 u31 में और अधिक टाइमज़ोन फ़ाइलें क्यों नहीं हैं?

क्या कोई जानता है, वे वहां क्यों नहीं हैं?

या क्या यह एक अलग सेटअप डाउनलोड करने की आवश्यकता है? मैंने जेडीके सेटअप (jdk-8u31-windows-i586 resp। X64.exe) का उपयोग किया।

उत्तर

2

जावा 8 ने Date and Time API पेश किया, जो शायद इन फ़ाइलों को अप्रचलित बना दिया।

6

अधिक जानकारी में जाकर, संस्करण 1.8 से शुरू होने वाली जावा-रिलीज से lib/zi-निर्देशिका को हटाने के लिए प्रेरणा रखरखाव बोझ को कम करने के लिए स्पष्ट रूप से है। 1.4 में पेश की गई lib/zi-directory और 1.8 में पेश की गई नई tzdb.dat-file रखरखाव के मामले में जारी रखने के लिए महंगा है। यह मेल JSR-310-mailing archive से भी देखें।

एक अन्य कारण JEP 151 में तैयार प्रेरणा है जिसका लक्ष्य मेमोरी पैर प्रिंट को कम करना और lib/zi-Library का प्रारंभ करना था। इस लक्ष्य को अंततः अधिक कॉम्पैक्ट नई tzdb.dat-file के पक्ष में lib/zi-Library को छोड़कर हल किया गया था जिसका आकार लगभग 100 केबीटीई है।

यह भी ध्यान रखें कि पुराने lib/zi-struct ने वर्ष 2037 तक ऑफ़सेट संक्रमण उत्पन्न किए हैं। इस सीमा का मूल सीमित पूर्णांक प्रकारों का उपयोग करने में उत्पत्ति है, इसलिए भविष्य में अब तक पूरी संरचना अप्रचलित नहीं है और ओरेकल ने इसे रखने का फैसला किया था, और एक सामान्य रिफैक्टरिंग की आवश्यकता होगी।

+0

बहुत बहुत धन्यवाद। सही जवाब –

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