2012-10-02 15 views
5

पर पुनः-इनिट को अस्वीकार करना कृपया कोई मुझे बताएं कि इस त्रुटि का अर्थ क्या है और इससे कैसे बचें।NoClassDefFoundError - पूर्व-असफल वर्ग

एक के बाद जब तक मेरी एप्लिकेशन सेना इस त्रुटि के कारण बंद कर देता है:

09-28 12:53:45.746 I/dalvikvm(29489): Rejecting re-init on previously-failed class Lcom/bartat/android/ui/task/AsyncTaskExt; v=0x0 
09-28 12:53:45.748 D/AndroidRuntime(29489): Shutting down VM 
09-28 12:53:45.755 I/am_crash(1146): [29489,com.bartat.android.secret,572996,java.lang.NoClassDefFoundError,com.bartat.android.ui.task.AsyncTaskExt,CommandsActivity.java,726] 
09-28 12:53:45.755 I/am_finish_activity(1146): [1079225264,123,com.bartat.android.secret/.CommandsActivity,crashed] 
09-28 12:53:45.750 W/dalvikvm(29489): threadid=1: thread exiting with uncaught exception (group=0x40015560) 
09-28 12:53:45.752 E/AndroidRuntime(29489): FATAL EXCEPTION: main 
09-28 12:53:45.752 E/AndroidRuntime(29489): java.lang.NoClassDefFoundError: com.bartat.android.ui.task.AsyncTaskExt 

यह समस्या एप्लिकेशन पुन: इंस्टॉल द्वारा हल नहीं किया जा सकता है।

यदि मैं AsyncTaskExtAsyncTaskExt2 का नाम बदलता हूं तो उदाहरण के लिए यह फिर से काम करता है। लेकिन कुछ हफ्तों/महीनों के बाद यह फिर से यह त्रुटि प्राप्त करना शुरू कर दिया।

इसका क्या अर्थ है? इसे क्यों फेंक दिया जाता है और कक्षा का नाम बदलने के बिना इसे कैसे टालना है?

कृपया मेरी मदद करो, तमस

उत्तर

0

क्या आप यकीन है कि यह पहला अपवाद आप अपने आवेदन चलाने के बाद हो रही है है? पहले कुछ बेजोड़ अपवाद हो सकते हैं।

+0

मुझे नहीं पता कि यह त्रुटि किस कारण से है, मेरा मतलब है कि ऐसा होने से पहले कोई त्रुटियां हैं या नहीं। लेकिन जब यह अपवाद होता है तो लॉग में कोई अन्य त्रुटि नहीं होती है। मुझे लगता है कि सिस्टम (vm?) कहीं संग्रहीत है कि इस वर्ग में कोई समस्या थी। लेकिन मैंने अभी तक पहला मौका नहीं लिया है। – bartat

9

यह तब होता है जब एक वर्ग के कारणों की एक किस्म के लिए लोड नहीं हो सका में उपयोग करता है-पुस्तकालय को जोड़ना होगा। दुर्भाग्य से नया एआरटी रनटाइम इसके कारण के रूप में पर्याप्त जानकारी लॉग नहीं करता है। यदि आप दलविक के साथ एक पुराने एंड्रॉइड डिवाइस को पकड़ सकते हैं तो आपको अलग-अलग लॉगिंग दिखाई देगी, आम तौर पर अधिक परिशुद्धता के साथ अपराध को प्रकट करना।

पिछली बार मैं इसे लाइव देखा मैं एक जार फ़ाइल है कि वास्तव में शामिल नहीं किया था या उसके निर्भरता सूची से निपटने के लिए है, तो Gradle फाइल करने के लिए सही निर्भर पुस्तकालय जोड़ने के लिए किया था इसे हल। सबसे बड़ा मुद्दा यह पता लगाने के लिए है कि कौन से वर्ग गुम हो गए थे - कुछ दल्विक लॉग/अपघटन/दस्तावेज आपको बताने में सक्षम हो सकता है।

जावा भाषा की पूरी तरह से वर्गों को लोड नहीं किया जा सकता है, इसलिए कई अन्य कारण हैं इसलिए यह विशिष्ट कारण सार्वभौमिक रूप से लागू नहीं हो सकता है।

+0

इससे मुझे बहुत मदद मिली। एक निर्भरता जोड़ना जार ने समस्या हल की। – Rediska

+0

एक लापता जेएआर निर्भरता जोड़ना भी मेरे लिए यह तय किया गया है। धन्यवाद! – pdsouza

2

न्यू रिलिक एनालिटिक्स सक्षम के साथ एक और प्रोजेक्ट बनाने के बाद मुझे यह समस्या शुरू हुई। ग्रैडल डिमन ने फिर नए रिलिक एजेंट को कैश किया और यह अन्य ऐप लॉन्च नहीं कर सका।

क्या मदद की

./gradlew --stop 
6

मेरे लिए होता है केवल यदि तत्काल रन सक्षम किया गया है था।

+0

एक टन समय बचाने के लिए धन्यवाद, चीयर्स :) –

+0

बहुत बहुत धन्यवाद। जब मैं इंस्टा रन अक्षम करता हूं तो यह काम करता है। अभी भी इंस्टा के साथ कुछ समस्याएं चल रही हैं? –

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