13

पर अवैध पैटर्न चरित्र 'वाई' मैं विंडोज़ में इस पैटर्न SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss"); का उपयोग करता हूं और यह काम करता है, लेकिन उबंटू 10.04 पर प्रयास करते समय यह play.exceptions.JavaExecutionException: Illegal pattern character 'Y' अपवाद दिखाता है।उबंटू

मैं इसके लिए समाधान खोजता हूं और पाया कि वर्ष पैटर्न को कम-मामले में बदलना चाहिए: SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); और यह काम करता है।

क्या कोई मुझे इस कारण का कारण बता सकता है कि विंडोज़ में क्यों काम करता है लेकिन उबंटू में मैं काम नहीं करता अगर मैं 'वाई' के बजाय 'वाई' का उपयोग करता हूं?

नोट:

  1. प्ले-1.2.3
  2. JRE:
    1. विंडोज: java version "1.7.0_03" Java(TM) SE Runtime Environment (build 1.7.0_03-b05) Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing)
    2. उबंटू: java version "1.6.0_31" Java(TM) SE Runtime Environment (build 1.6.0_31-b04) Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
  3. विंडोज 7
  4. उबंटू 10.04

अद्यतन 24/05/2012

के बाद मैं अपने सिस्टम में फिर से जांच, वहाँ 3 JRE है और डिफ़ॉल्ट के लिए JRE1.7 का उपयोग कर मेरी खिड़कियां। लेकिन प्ले के लिए मैंने जेआरई 1.6 का उपयोग करके दौड़ना शुरू किया।

+4

क्योंकि उबंटू कार्यान्वयन एपीआई दस्तावेज का पालन करता है? स्रोत में खुदाई किए बिना, यह सिर्फ एक राय जवाब हो सकता है, लेकिन कोई और जान सकता है। –

उत्तर

21

मैं SimpleDateFormat की खोज करता हूं और ऑरैकल से doc प्राप्त करता हूं।

मेरी विंडोज़ में काम करता है क्योंकि मैंने डिफ़ॉल्ट जेआरई को 1.7 पर सेट किया है लेकिन अभी भी प्ले फ्रेमवर्क के लिए जेआरई 1.6 का उपयोग कर चल रहा है। इस वजह से विंडोज पर

enter image description here

काम करता है, JRE1.7 Week year के लिए जोड़ा गया है 'Y' पैटर्न और JRE1.6 में इस बात के लिए कोई पैटर्न नहीं है।

14

Y मान्य पैटर्न नहीं है। y है।

docs के अनुसार:

Letter Date or Time Component  Presentation Examples 
G  Era designator    Text   AD 
y  Year      Year   1996; 96 
M  Month in year    Month   July; Jul; 07 
w  Week in year    Number   27 
... 

मैं क्यों Y खिड़कियों में काम करेगा पता नहीं है, लेकिन यह दर्ज नहीं किया गया है। y सही है। और सबसे सुरक्षित।

+0

क्या ऐसा इसलिए हो सकता है क्योंकि मैं अलग जेआरई का उपयोग करता हूं? विंडोज़ के लिए मैं ओरेकल से जेआरई का उपयोग कर रहा हूं लेकिन यह सुनिश्चित नहीं है कि मेरा उबंटू एक ही जेआरई का उपयोग कर रहा है, क्योंकि कोई अन्य व्यक्ति मेरे लिए इंस्टॉल कर रहा है। – Crazenezz

+1

@ क्राज़नेज़ - रन 'जावा-वर्जन' –

+0

@ स्टीफनसी: धन्यवाद, जेआरई के बारे में कुछ नोट जोड़ें – Crazenezz