Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.NoClassDefFoundError:未能在棒棒糖上解析:Landroid/support/graphics/drawable/VectorDrawableCompat Android_Java_Android_Android Studio - Fatal编程技术网

java.lang.NoClassDefFoundError:未能在棒棒糖上解析:Landroid/support/graphics/drawable/VectorDrawableCompat Android

java.lang.NoClassDefFoundError:未能在棒棒糖上解析:Landroid/support/graphics/drawable/VectorDrawableCompat Android,java,android,android-studio,Java,Android,Android Studio,希望有人能帮助我。在棒棒糖版本上运行我的应用程序时出现以下错误: Process: br.com.turbi.turbi, PID: 4279 java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/graphics/drawable/VectorDrawableCompat;

希望有人能帮助我。在棒棒糖版本上运行我的应用程序时出现以下错误:

Process: br.com.turbi.turbi, PID: 4279
                                                              java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/graphics/drawable/VectorDrawableCompat;
                                                                  at android.support.v7.widget.AppCompatDrawableManager$VdcInflateDelegate.createFromXmlInner(AppCompatDrawableManager.java:734)
                                                                  at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates(AppCompatDrawableManager.java:367)
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:197)
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190)
                                                                  at android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.java:711)
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:195)
                                                                  at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:81)
                                                                  at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:131)
                                                                  at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:155)
                                                                  at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:31)
                                                                  at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:55)
                                                                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:205)
                                                                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:185)
                                                                  at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:519)
                                                                  at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:71)
                                                                  at br.com.turbi.turbi.SplashActivity.onCreate(SplashActivity.java:31)
                                                                  at android.app.Activity.performCreate(Activity.java:5990)
                                                                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
                                                                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
                                                                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
                                                                  at android.app.ActivityThread.access$800(ActivityThread.java:151)
                                                                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
                                                                  at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                  at android.os.Looper.loop(Looper.java:135)
                                                                  at android.app.ActivityThread.main(ActivityThread.java:5254)
                                                                  at java.lang.reflect.Method.invoke(Native Method)
                                                                  at java.lang.reflect.Method.invoke(Method.java:372)
                                                                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
                                                                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
                                                               Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.graphics.drawable.VectorDrawableCompat" on path: DexPathList[[zip file "/data/app/br.com.turbi.turbi-2/base.apk"],nativeLibraryDirectories=[/data/app/br.com.turbi.turbi-2/lib/x86, /vendor/lib, /system/lib]]
                                                                  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
                                                                  at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
                                                                  at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
                                                                  at android.support.v7.widget.AppCompatDrawableManager$VdcInflateDelegate.createFromXmlInner(AppCompatDrawableManager.java:734) 
                                                                  at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates(AppCompatDrawableManager.java:367) 
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:197) 
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190) 
                                                                  at android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.java:711) 
                                                                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:195) 
                                                                  at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:81) 
                                                                  at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:131) 
                                                                  at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:155) 
                                                                  at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:31) 
                                                                  at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:55) 
                                                                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:205) 
                                                                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:185) 
                                                                  at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:519) 
                                                                  at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:71) 
                                                                  at br.com.turbi.turbi.SplashActivity.onCreate(SplashActivity.java:31) 
                                                                  at android.app.Activity.performCreate(Activity.java:5990) 
                                                                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
                                                                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
                                                                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
                                                                  at android.app.ActivityThread.access$800(ActivityThread.java:151) 
                                                                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
                                                                  at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                  at android.os.Looper.loop(Looper.java:135) 
                                                                  at android.app.ActivityThread.main(ActivityThread.java:5254) 
                                                                  at java.lang.reflect.Method.invoke(Native Method) 
                                                                  at java.lang.reflect.Method.invoke(Method.java:372) 
                                                                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
                                                                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 
                                                                Suppressed: java.lang.ClassNotFoundException: android.support.graphics.drawable.VectorDrawableCompat
                                                                  at java.lang.Class.classForName(Native Method)
                                                                  at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
                                                                  at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
                                                                  at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                                                                        ... 30 more
                                                               Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

}我试图重现这个错误

以下是导致错误的代码:

compileSdkVersion 25
buildToolsVersion '25.0.0'
---------

compile 'com.android.support:recyclerview-v7:25.0.1'
compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:25.0.1'
compileSdkVersion 25
buildToolsVersion '25.0.0'
---------

compile 'com.android.support:recyclerview-v7:25.0.0'
compile 'com.android.support:appcompat-v7:25.0.0'
compile 'com.android.support:design:25.0.0'
以下是解决该错误的代码:

compileSdkVersion 25
buildToolsVersion '25.0.0'
---------

compile 'com.android.support:recyclerview-v7:25.0.1'
compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:25.0.1'
compileSdkVersion 25
buildToolsVersion '25.0.0'
---------

compile 'com.android.support:recyclerview-v7:25.0.0'
compile 'com.android.support:appcompat-v7:25.0.0'
compile 'com.android.support:design:25.0.0'

编译代码后,程序中的每个类都会有.class文件。这些二进制文件是Java为执行程序而解释的字节码。NoClassDefFoundError表示负责动态加载类的类加载器(在本例中为java.net.URLClassLoader)找不到您尝试使用的类的.class文件

如果所需的类不存在,代码将无法编译(除非类加载了反射),因此通常此异常意味着您的类路径不包含所需的类。请记住,类加载器(特别是java.net.URLClassLoader)将在类路径的每个条目中查找文件夹a/b/c/中的包a.b.c中的类。NoClassDefFoundError还可以表示您缺少编译所依据的.jar文件的可传递依赖项,并且您正在尝试使用该依赖项

例如,如果您有一个com.example.Foo类,那么编译后您将有一个类文件Foo.class。例如,假设您的工作目录是…/project/。该类文件必须放在…/project/com/example中,您可以将类路径设置为…/project/

旁注:我建议利用Java和JVM语言的惊人工具。Eclipse和IDEA等现代IDE以及Maven或Gradle等构建管理工具将帮助您不必担心类路径(同样多),而只需关注代码!也就是说,这个链接解释了在命令行上执行时如何设置类路径


如果缺少的类不是项目中的某个类,那么我创建了这个工具,用于查看给定类的开源工件。将类名粘贴到搜索框中,如果它是开源的,它就会找到它。

顺便说一句,请检查以下线程编译如此多的重叠库是一种反模式