java.lang.NoClassDefFoundError:android.support.v7.app.AppCompatDelegateImplV14

时间:2015-06-18 15:45:57

标签: android android-support-library noclassdeffounderror android-support-design

突然间,当我尝试编译项目并运行我的应用程序时,我开始收到此运行时错误 -

java.lang.NoClassDefFoundError: android.support.v7.app.AppCompatDelegateImplV14
            at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:93)
            at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:77)
            at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:429)
            at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:57)
            at com.example.shubhamkanodia.bookmybook.MainActivity.onCreate(MainActivity.java:70)
            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)

以下是我尝试过的事情:

1)从我的所有依赖项中删除support-v4并手动指定旧版本,支持compile 'com.android.support:support-v4:21.+'

有趣的是, MainActivity不是我的启动器活动。所以应用程序在启动器活动中工作正常。但是一旦mainactivity打开,它就会失败。

我的build.gradle在下面给出(我不得不搞砸了一点来修复另一个another design library bug,所以不要介意排除)

     compile('com.google.android.gms:play-services-identity:7.5.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.android.support:palette-v7:22.2.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.nhaarman.listviewanimations:lib-core:3.1.0@aar') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    apt "org.androidannotations:androidannotations:$AAVersion"
    compile ("org.androidannotations:androidannotations-api:$AAVersion")
            {
                exclude module: 'support-v4'
                exclude module: 'support-v7'

            }
    compile('com.android.support:appcompat-v7:22.2.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.android.support:cardview-v7:22.2.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.android.support:design:22.2.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile project(':cognalys')
    compile fileTree(dir: 'libs', include: 'Parse-*.jar')
    compile fileTree(dir: 'libs', include: 'ParseCrashReporting-*.jar')
    compile ('com.google.android.gms:play-services-plus:7.5.0'){
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile ('com.parse.bolts:bolts-android:1.+') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.squareup.picasso:picasso:2.5.2') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.github.ksoichiro:android-observablescrollview:1.5.1') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile ('me.dm7.barcodescanner:zbar:1.7.2') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.sothree.slidinguppanel:library:3.0.0') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile ('com.mcxiaoke.volley:library:1.0.+'){
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile 'com.android.support:support-v4:21.+'
    compile ('jp.wasabeef:picasso-transformations:1.0.3@aar'){
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile ('jp.co.cyberagent.android.gpuimage:gpuimage-library:1.2.3@aar'){
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile ('com.daimajia.easing:library:1.0.1@aar') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    }
    compile('com.daimajia.androidanimations:library:1.1.3@aar') {
        exclude module: 'support-v4'
        exclude module: 'support-v7'

    } 

3 个答案:

答案 0 :(得分:2)

从您曝光的所有排除项中,我必须说我读到的内容是您刚刚从您的应用程序中禁用了support-v4support-v7(即使来自design和{{1} })。

所以尽量保持最后^^

appcompat

答案 1 :(得分:1)

对我来说,解决方案一直在添加

android:name="android.support.multidex.MultiDexApplication"

到清单

答案 2 :(得分:0)

只需启用multidex。这对我有用。请点击链接https://stackoverflow.com/a/31724383/3040893