com.android.builder.dexing.DexArchiveBuilderException: 在编译dex时出现错误

5

运行我的项目时出现以下问题:

com.android.builder.dexing.DexArchiveBuilderException: 处理.gradle\caches\transforms-1\files-1.1\firebase-analytics-impl-11.8.0.aar\0e3311be69809df8820438f9666651f5\jars\classes.jar时失败
com.android.builder.dexing.DexArchiveBuilderException: dex编译过程中出现错误。
com.android.tools.r8.CompilationFailedException: 编译未能完成。 com.android.tools.r8.utils.AbortException: 错误:从 com.google.android.gms.internal.zzcku 引用的类型 com.google.android.gms.common.internal.zzf 被引用为一个接口。

Caused by: com.android.builder.dexing.DexArchiveBuilderException: 处理Firebase-analytics-impl-11.8.0.aar\jars\classes.jar时失败。

build.gradle

apply plugin: 'com.android.application'

android {

    compileSdkVersion 28
    defaultConfig {
        applicationId "com.xxxxxx.xxxx"
        minSdkVersion 17
        targetSdkVersion 28
        versionCode 171312
        versionName "1.2"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        project.archivesBaseName = "doctor"
        vectorDrawables.useSupportLibrary = true
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles fileTree(dir: "proguard", include: ["*.pro"]).asList().toArray()
            proguardFiles getDefaultProguardFile('proguard-android.txt')
        }
        debug {
            minifyEnabled false
            proguardFiles fileTree(dir: "proguard", include: ["*.pro"]).asList().toArray()
            proguardFiles getDefaultProguardFile('proguard-android.txt')
        }
    }
    flavorDimensions "environment"
    productFlavors {
        staging {
            applicationIdSuffix ".staging"
        }
        production {
        }
        development {
            applicationIdSuffix ".development"
        }
    }
    dataBinding {
        enabled = true
    }
    buildToolsVersion '28.0.3'
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

ext {
    retrofitVersion = '2.3.0'
    firebaseVersion = '15.0.2'
}
dependencies {
    implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
    implementation "com.android.support:design:${rootProject.ext.supportLibVersion}"
    implementation "com.android.support:support-v13:$rootProject.ext.supportLibVersion"
    implementation "com.android.support:support-compat:${rootProject.ext.supportLibVersion}"
    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    implementation project(path: ':quickblox')
}

QuickBlox模块的build.gradle

apply plugin: 'com.android.library'
android {
    compileSdkVersion 28
    defaultConfig {
        minSdkVersion 17
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    flavorDimensions "default"
    defaultPublishConfig "doctorDebug"
    publishNonDefault true
    productFlavors {
        doctor {
            buildConfigField "boolean", "IS_DOCTOR", "true"
            versionNameSuffix "-doctor"
        }
        patient {
            buildConfigField "boolean", "IS_DOCTOR", "false"
            versionNameSuffix "-patient"
        }
    }
    android {
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation project(':library')
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.quickblox:quickblox-android-sdk-videochat-webrtc:3.8.1'
    implementation 'com.facebook.fresco:fresco:1.8.1'
    api('com.quickblox:quickblox-android-sdk-messages:3.8.1')
}

我已在gradle.properties中添加了android.enableD8.desugaring = true,但仍然遇到相同的问题。
有解决方案吗?

1
你的项目中启用了multidexEnabled吗? - Faysal Ahmed
是的,在项目中启用了 .multidexEnabled。 - Farman Ali Khan
@FaysalAhmed 我已经添加了 build.gradle 文件。 - Farman Ali Khan
1个回答

9
请也添加这个依赖。
implementation 'com.google.firebase:firebase-core:16.0.7'

希望这个问题能够得到解决。

你是怎么得出这个结论的?我在项目中有这个依赖项,但仍然出现了这个错误。 - Shahzeb
非常好。非常感谢。这个问题在tipsi-stripe中也发生了。至少对我来说,它解决了:https://github.com/tipsi/tipsi-stripe/issues/504 - christopher de jesus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接