हम समस्या हमारे लॉगफ़ाइल में निम्न त्रुटि है कि वहाँ है:जावा ArrayIndexOutOfBoundsException: शून्य लेकिन कोई स्टैक ट्रेस क्यों नहीं है?
[2012-09-24 00:09:32.590 +0000UTC] ERROR host server1 [] [] somepackage.someclass [] [Unknown] [V3rAqPaDvvAAAAExEXhdWGyh] [pjsQwTGHzxcAAAE5j4YdGvWV] "ThreadName" Some error happened: java.lang.ArrayIndexOutOfBoundsException: null
वहाँ केवल इस एक पंक्ति है, और कोई अपवाद नहीं स्टैक ट्रेस है।
यह अपवाद होता है जिसमें यह अवरोध होता है गतिशील रूप से जेनरेट किए गए जावा बाइट कोड को निष्पादित करता है जो जावासिस्ट का उपयोग करके बनाया गया था। , अशक्त
- java.lang.ArrayIndexOutOfBoundsException:
मैं दो बातों के बारे में सोच रहा हूँ ब्लॉक, जो आमतौर पर एक पूर्ण स्टैक ट्रेस में परिणाम होना चाहिए।
मेरे सवाल:
कोड किस तरह एक प्रवेश उत्पादन पैदा कर सकता है "java.lang.ArrayIndexOutOfBoundsException: अशक्त"। मैं इसे किसी भी भाग्य के साथ एक परीक्षण कार्यक्रम के साथ पुन: पेश करने की कोशिश करता हूं। मुझे हमेशा कुछ मिलता है जैसे "java.lang.ArrayIndexOutOfBoundsException: अनुक्रमणिका: 3" या तो।
इस तथ्य का कारण हो सकता है कि कोई स्टैक ट्रेस नहीं है, यह कोड रनटाइम पर गतिशील रूप से जेनरेट किया गया है और लॉगर/जेवीएम स्टैक ट्रेस या लाइन नंबर 'पता' नहीं है?
हम वर्तमान में अधिक जानकारी प्राप्त करने के लिए डिबगिंग और जांच कर रहे हैं, लेकिन शायद यह किसी से परिचित लगता है।
Object obj = null;
throw new ArrayIndexOutOfBoundsException("" + obj);
आप एक Oracle JVM का उपयोग कर रहे हैं, तो आप यह देखने के लिए एक अतिरिक्त पैरामीटर के रूप में -XX:-OmitStackTraceInFastThrow
जोड़ सकते हैं:
संपादित शीर्षक यह स्पष्ट करता है कि यह एक डुप्लिकेट नहीं है। यहां यह सवाल इस बात के बारे में अधिक है कि क्यों कोई स्टैक ट्रेस नहीं है, और अपवाद से कैसे बचें। – Christoph
भविष्य में मेरे जैसे अजनबी की मदद के लिए समान प्रश्नों के लिए लिंक :) [कोई स्टैकट्रेस वाला जावा में NullPointerException] (https://stackoverflow.com/q/2411487) और [NullPointerException स्टैक ट्रेस डीबग एजेंट के बिना उपलब्ध नहीं है] (https : //stackoverflow.com/q/1076191)। –