2017-03-26 16 views
6

Tôi đang tạo ứng dụng có firebase nhưng gặp lỗi lớp trùng lặp. Tôi đã kiểm tra tất cả các phụ thuộc, nhưng tôi không thể tìm ra nơi tôi đã có hai phiên bản của libs firebase. Lỗi: Thực hiện không thành công cho tác vụ ': app: transformClassesWithJarMergingForDebug'.java.util.zip.ZipException: mục trùng lặp với firebase

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/firebase/iid/zzb$1.class

buildscript { 
    repositories { 
     maven { url 'https://maven.fabric.io/public' } 
    } 

    dependencies { 
     classpath 'io.fabric.tools:gradle:1.+' 
    } 
} 
apply plugin: 'com.android.application' 
apply plugin: 'io.fabric' 
apply plugin: 'com.google.gms.google-services' 

android { 
    compileSdkVersion 25 
    buildToolsVersion '24.0.3' 
    defaultConfig { 
     applicationId "com.android.palmtickle" 
     minSdkVersion 14 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     //Enabling multiDex support. 
     multiDexEnabled true 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 
repositories { 
    mavenCentral() 
    maven { 
     url 'http://dl.bintray.com/amulyakhare/maven' 
    } 
    maven { url 'https://maven.fabric.io/public' } 
} 

dependencies { 
    compile('com.digits.sdk.android:digits:[email protected]') { 
     transitive = true; 
    } 

    //support and app compatibility libs 
    compile 'com.android.support:appcompat-v7:25.3.0' 
    compile 'com.android.support:design:25.3.0' 
    compile 'com.android.support:cardview-v7:25.3.0' 
    compile 'com.android.support:recyclerview-v7:25.3.0' 
    compile 'com.android.support:support-v4:25.3.0' 

    compile 'com.google.code.gson:gson:2.7' 
    compile 'com.squareup.retrofit:retrofit:1.9.0' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'de.hdodenhof:circleimageview:2.0.0' 
    compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1' 
    compile 'com.wdullaer:materialdatetimepicker:2.1.1' 

    //entries related to firebase 
    compile 'com.google.firebase:firebase-auth:10.2.1' 
    compile 'com.google.firebase:firebase-database:10.2.1' 

    compile 'com.google.guava:guava-base:r03' 
    compile 'com.yalantis:ucrop:2.2.0-native' 
} 

Như tôi đã luôn cố gắng để giải quyết lỗi như thế này bằng cách tìm kiếm file trùng lặp trong Android Studio. Khi tôi tìm kiếm lớp học zzb trong studio android, tôi nhận được một cái bình firebase-iid-9.0.0 với tất cả các lớp Firebase 10.2.1 khác. Tôi không thể tìm ra phụ thuộc nào đang tiêm lọ firebase-iid-9.0.0 này? Bất kỳ ý tưởng?

+1

Kiểm tra câu trả lời của tôi để có được đầy đủ 'phụ thuộc gradle' - http://stackoverflow.com/questions/42945613/how-to-find-out -which-library-includes-which-support-library-version/42945708 # 42945708 – Wizard

Trả lời

9

Cố gắng cập nhật buildToolsVersion to 25.0.2

tôi phải đối mặt với cùng một vấn đề ngày hôm nay, và tôi cố gắng sử dụng

compile 'com.google.firebase:firebase-core:10.2.1' 
compile 'com.google.firebase:firebase-messaging:10.2.1' 

dự án sạch và xây dựng lại dự án
mọi thứ đều ổn

kiểm tra thư viện hỗ trợ là phiên bản 25.3.0 trên mỗi mô-đun và tạo chắc chắn tất cả mô-đun firebase là 10.2.1

+0

Có vẻ như tôi đã thiếu lib lõi của Firebase: 'com.google.firebase: firebase-core: 10.2.1'. Tôi không biết điều này lib phân tích là cần thiết? Tôi vẫn còn nghi ngờ rằng nếu lib cốt lõi này là phải có hay không. –

+0

@MahendraChhimwal Kiểm tra trang thiết lập. Nó không phải là bắt buộc, nhưng nó được khuyến khích cao. https://firebase.google.com/docs/android/setup –

+0

@MahendraChhimwal Có một số tính năng phân tích cần Core, như xóa thời gian, thời gian cài đặt, first_open, session_start, trong bảng điều khiển Firebase của bạn → Analytics → sự kiện – Angus

5

Đối với tôi, đó là vấn đề phụ thuộc với số phiên bản sử dụng với thư viện dịch vụ google play và thư viện firebase. Sử dụng lệnh sau để xem cây phụ thuộc:

gradlew :app:dependencies 

Output:

enter image description here

kiểm tra phiên bản thư viện của bạn. ở đây phiên bản ở bên trái của -> được yêu cầu phiên bản và phiên bản ở bên phải của -> được chọn phiên bản của gradle.

Vì vậy, tôi đã cập nhật phiên bản thư viện dịch vụ Google Play và phiên bản thư viện Firebase thành 11.0.1 trong tệp build.gradle cấp ứng dụng.

compile "com.google.android.gms:play-services-location:11.0.1" 
compile "com.google.android.gms:play-services-base:11.0.1" 
compile "com.google.android.gms:play-services-maps:11.0.1" 
compile 'com.google.firebase:firebase-crash:11.0.1' 
compile 'com.google.firebase:firebase-core:11.0.1' 

bạn có thể thấy dịch vụ Google Play phiên bản thư viện here

Các vấn đề liên quan