Firebase重复文件构建错误

时间:2017-09-11 13:01:57

标签: android firebase duplicates dependencies android-gradle

我一直在开发和开发我的应用程序,然后我决定构建APK然后我得到重复文件错误,专门讨论firebase zzc.class?这是我找不到的。我之前看到过重复的文件错误并将其整理出来但是这个Firebase错误确实减慢了我的工作,因为我没有看到我的问题的具体答案。

以下是我的依赖

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.android.support:appcompat-v7:25.+'
compile 'com.android.support:support-v4:25.+'
compile 'com.android.support:design:25.+'
compile 'com.google.firebase:firebase-auth:10.0.1'
compile 'com.google.firebase:firebase-database:10.0.1'
compile 'com.firebase:firebase-client-android:2.3.1'
compile 'com.google.firebase:firebase-storage:10.0.1'
compile 'com.firebaseui:firebase-ui:2.0.1'
compile 'org.apache.pdfbox:pdfbox:2.0.0'
compile 'net.igenius:customcheckbox:1.3'
compile 'com.roger.catloadinglibrary:catloadinglibrary:1.0.1'
testCompile 'junit:junit:4.12'
}

然后是错误:

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:1)

您正在使用相同库的不同版本:

compile 'com.google.firebase:firebase-auth:10.0.1'
compile 'com.google.firebase:firebase-database:10.0.1'
compile 'com.google.firebase:firebase-storage:10.0.1'
compile 'com.firebaseui:firebase-ui:2.0.1'

尽可能read here,firebaseui和firebase库之间存在依赖关系:

FirebaseUI Version  Firebase/Play Services Version
2.3.0               11.0.4
2.2.0               11.0.4
2.1.1               11.0.2
2.0.1               11.0.1

使用相同的版本来避免这些问题。

也没有理由使用旧版本:

compile 'com.firebase:firebase-client-android:x.x.x'

检查migration guide并使用:

compile "com.google.firebase:firebase-database:X.X.X"

请注意,最新版本需要google maven repo

allprojects {
    // ...
    dependencies {
        // ...
        maven {
            url "https://maven.google.com" // Google's Maven repository
        } 
    }
}

答案 1 :(得分:0)

发生这种情况是因为build.gradle文件中有重复项。要解决此问题,您需要删除以下代码行:

compile 'com.firebase:firebase-client-android:2.3.1'

您不能将旧版本的依赖项与新版本混合使用。

答案 2 :(得分:0)

确保将firebase版本更新为firebase文档中提到的构建(app)配置中的最新可用版本。

[https://firebase.google.com/docs/android/setup/]

如果您正在使用播放服务,请确保firebase库的版本与播放服务版本完全相同。

 defaultConfig {
    multiDexEnabled true
}

如果存在库冲突,请将gradle添加为:

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

并在您的基础应用中

@FormUrlEncoded
@POST("WSCoreAPI/send/receive/tester")
Call<LoginResponse> tester(@FieldMap Map<String, String> parameters);