2016-09-20 8 views
11

मैंने ऐपकंपेट लाइब्रेरी को 24.2.1 और मेरे ईक्लीप्स इंस्टॉल में एंड्रॉइड 7 में एसडीके अपडेट किया है। चूंकि, मैं अपने किसी भी ऐप्स को चलाने में सक्षम नहीं हूं। मैं तुम्हें उस के साथ एक सा मदद कर सकते हैं, तो सराहना ...java.lang.NoClassDefFoundError: विफल समाधान: लैंड्रॉइड/समर्थन/v4/os/BuildCompat

E/AndroidRuntime(17555): java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/os/BuildCompat; 
E/AndroidRuntime(17555): at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:196) 
E/AndroidRuntime(17555): at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:181) 
E/AndroidRuntime(17555): at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:521) 
E/AndroidRuntime(17555): at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:71) 
E/AndroidRuntime(17555): at com.ryosoftware.calendareventsnotifier.MainActivity.onCreate(MainActivity.java:844) 
E/AndroidRuntime(17555): at android.app.Activity.performCreate(Activity.java:5990) 
E/AndroidRuntime(17555): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
E/AndroidRuntime(17555): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2311) 
E/AndroidRuntime(17555): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2420) 
E/AndroidRuntime(17555): at android.app.ActivityThread.access$900(ActivityThread.java:154) 
E/AndroidRuntime(17555): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1321) 
E/AndroidRuntime(17555): at android.os.Handler.dispatchMessage(Handler.java:102) 
E/AndroidRuntime(17555): at android.os.Looper.loop(Looper.java:135) 
E/AndroidRuntime(17555): at android.app.ActivityThread.main(ActivityThread.java:5294) 
E/AndroidRuntime(17555): at java.lang.reflect.Method.invoke(Native Method) 
E/AndroidRuntime(17555): at java.lang.reflect.Method.invoke(Method.java:372) 
E/AndroidRuntime(17555): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904) 
E/AndroidRuntime(17555): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699) 
E/AndroidRuntime(17555): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.os.BuildCompat" on path: DexPathList[[zip file "/data/app/com.ryosoftware.calendareventsnotifier-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]] 
E/AndroidRuntime(17555): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
E/AndroidRuntime(17555): at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
E/AndroidRuntime(17555): at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 
E/AndroidRuntime(17555): ... 18 more 
E/AndroidRuntime(17555): Suppressed: java.lang.ClassNotFoundException: android.support.v4.os.BuildCompat 
E/AndroidRuntime(17555):  at java.lang.Class.classForName(Native Method) 
E/AndroidRuntime(17555):  at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 
E/AndroidRuntime(17555):  at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 
E/AndroidRuntime(17555):  at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 
E/AndroidRuntime(17555):  ... 19 more 
E/AndroidRuntime(17555): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 
+0

यह 1 देखें।अपनी परियोजना पर राइट क्लिक करें और गुण चुनें। 2. बाईं ओर मेनू से जावा बिल्ड पथ का चयन करें। 3. ऑर्डर और निर्यात टैब का चयन करें। 4. सूची से सुनिश्चित करें कि आपके प्रोजेक्ट में जोड़े गए पुस्तकालय या बाहरी जार चेक किए गए हैं। 5. अंत में, अपनी परियोजना को साफ करें और चलाएं। – Ciril

+0

मुझे समझ में नहीं आता कि अब तक आप एंड्रॉइड स्टूडियो का उपयोग क्यों नहीं कर रहे हैं, अब ग्रहण समर्थन अब तक चला गया है। –

उत्तर

16

आप NoClassDefFoundError & ClassNotFoundException

NoClassDefFoundError in Java comes when Java Virtual Machine is not able to find a particular class at runtime which was available at compile time.

FYI करें

आप ग्रहण का उपयोग कर रहे हो रही है। Android Studio एंड्रॉइड के लिए विकसित करने का एक बहुत ही आसान तरीका है यदि आप इसे लटका पाने में कामयाब होते हैं। डेवलपर्स के लिए जो ग्रहण का उपयोग कर रहे हैं, स्टूडियो में माइग्रेट करना उनके लिए एक दुःस्वप्न है। ग्रहण मर चुका है (मेरी व्यक्तिगत राय)।

अपने NoClassDefFoundError समस्या गोटो लिए Project > Clean तहत विकल्प के पुनर्निर्माण और उसके बाद परियोजना आप साफ करने के लिए तो फिर आपके ग्रहण पुन: प्रारंभ करें और फिर से चलाने चाहते हैं।

समाधान

Check your classpath contains that jar (AppCompat), if your classpath doesn't contain the jar then just add that class in your classpath.

आप एंड्रॉयड स्टूडियो के बजाय ग्रहण का प्रयोग करना चाहिए। पढ़ें

  1. Support Library Features

Gradle स्क्रिप्ट निर्भरता पहचानकर्ता का निर्माण कर रहा है के लिए इस पुस्तकालय इस प्रकार है:

com.android.support:appcompat-v7:24.2.1 
+1

टिप्पणी के लिए धन्यवाद। अंत में सही एपकोपेट लाइब्रेरी समेत हल हो गया। दुर्भाग्यवश, मैं इस समय अपने सभी प्रोजेक्ट को AndroidStudio में माइग्रेट करने में सक्षम नहीं हूं। –

+1

@IntelliJAmiya हैलो मुझे एंड्रॉइड स्टूडियो से एक ही समस्या है, और मैंने पहले ही इस लाइब्रेरी को मेरे मुख्य एप्लिकेशन और एयर एप्लिकेशन दोनों में आयात किया है। – Libathos

0

मेरे मामले में त्रुटि पूरे के उपयोग के कारण के कारण हुई थी जीएमएस: प्ले-सेवा लाइब्रेरी। जीएमएस के कुछ घटक: प्ले-सर्विसेज आपके द्वारा स्पष्ट रूप से निर्दिष्ट किए गए संस्करणों के अलावा अन्य संस्करणों का संदर्भ देता है।

केवल आवश्यक प्ले-सेवाओं का उपयोग करें जो आवश्यक हैं उदाहरण: 'com.google.android.gms: playports-analytics: 10.2.0' 'com.google.android.gms की बजाय: play-services: 10.2.0 '।

यह भी देखें: All com.android.support libraries must use the exact same version specification

अच्छा पढ़ा: https://blog.mindorks.com/avoiding-conflicts-in-android-gradle-dependencies-28e4200ca235

1

मेरे मामले

  1. स्वच्छ परियोजना रद्द में
  2. और पुनः आरंभ

यह काम

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