NoClassDefFound异常解决方案

时间:2019-03-07 09:09:27

标签: android

当我在android 6或更高版本上运行我的应用程序时,它运行完美,但在 <6 版本上却出现错误

 "java.lang.NoClassDefFoundError: Failed resolution of:
 Landroid/support/graphics/drawable/VectorDrawableCompat;".

当我从第一个路径运行时,我在两个不同的路径上都有一个应用程序,它给出了上面提到的错误,但是从另一个路径运行,则它运行完美。 为什么有人可以给我解决方案?

这是我的礼物

    android {
    compileSdkVersion 26
    buildToolsVersion "26.0.3"
    defaultConfig {
        applicationId "xxx.xxx.xxx"
        minSdkVersion 21
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets.main {
        jniLibs.srcDir 'libs'
        jni.srcDirs = [] //disable automatic ndk-build call
    }
}

repositories {
    maven { url "https://maven.google.com" }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.google.android.gms:play-services:11.0.4'
    compile 'com.android.support:cardview-v7:26.1.0'
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile 'com.android.support:support-v13:26.1.0'
    compile 'com.android.support:design:26.1.0'
    compile 'com.android.support:support-v4:26.1.0'
    compile 'com.android.volley:volley:1.0.0'
    compile 'com.google.code.gson:gson:2.5'

    testCompile 'junit:junit:4.12'
}

1 个答案:

答案 0 :(得分:1)

the documentation of VectorDrawableCompat中所述,该类已添加到API 24中。根据correspondence table,该类为Android 7.0。

因此,在低于6.0的Android上找不到该类是预期的行为