2015-06-11 5 views
8

मैं अपने प्रोजेक्ट के लिए एक पुस्तकालय को जोड़ने के लिए, अभी कोशिश कर रहा हूँ मेरे वर्तमान build.gradle है:त्रुटि: java.util.zip.ZipException: नकल प्रविष्टि

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.2" 

    repositories { 
     mavenCentral() 
    } 

    defaultConfig { 
     applicationId "com.example.guycohen.cheaters" 
     minSdkVersion 11 
     targetSdkVersion 21 
     versionCode 1 
     versionName "1.0" 
      // Enabling multidex support. 
     multiDexEnabled true 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:21.0.3' 
    compile 'com.facebook.android:facebook-android-sdk:4.0.0' 
    compile 'com.android.support:multidex:1.0.0' 
    compile 'com.parse.bolts:bolts-android:1.+' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.whl.handytabbar:library:1.0.4' 
    compile 'com.nineoldandroids:library:2.4.0' 
    compile 'com.daimajia.easing:library:[email protected]' 
    compile 'com.daimajia.androidanimations:library:[email protected]' 
} 

जब मैं एक नए पुस्तकालय जोड़ने

012 जोड़कर

Error:Execution failed for task ':app:packageAllDebugClassesForMultiDex'. 
> java.util.zip.ZipException: duplicate entry:  android/support/v4/print/PrintHelperKitkat$2$1.class 

मैं इस समस्या को हल करने के लिए कोशिश की है:

compile 'com.github.navasmdc:PhoneTutorial:[email protected]' 

मैं इस त्रुटि मिलती है

configurations { all*.exclude group: 'com.android.support', module: 'support-v4' } 

मुझे अपनी परियोजना में डुप्लिकेट क्लास नहीं मिला।

मुझे यकीन है कि अगर मैं डुप्लिकेट प्रविष्टि को हटा सकता हूं तो यह पूरी तरह से चला जाएगा, लेकिन मुझे यकीन नहीं है कि मुझे यह कैसे मिलेगा।

उत्तर

13
compile 'com.android.support:support-v4:22.1.1' 
compile ('com.android.support:appcompat-v7:22.1.1') { 
    exclude module: 'support-v4' 
} 
compile ('com.facebook.android:facebook-android-sdk:4.2.0') { 
    exclude module: 'support-v4' 
} 
compile ('com.github.navasmdc:PhoneTutorial:[email protected]') { 
    exclude module: 'support-v4' 
} 
+0

के लिए धन्यवाद अपने तेज़ उत्तर, मुझे अभी भी त्रुटि मिल रही है: निष्पादन कार्य के लिए विफल रहा ': app: packageAllDebugClassesForMultiDex'। > java.util.zip.ZipException: डुप्लिकेट प्रविष्टि: एंड्रॉइड/समर्थन/v4/प्रिंट/प्रिंटहेल्परकिटक $ 2 $ 1. क्लास ----------------> मुझे समझ में नहीं आता क्यों मैं अगर मैं समर्थन पुस्तकालय को बहिष्कृत करता हूं तो क्या मैं डुप्लिकेट प्राप्त कर रहा हूं? यह भी तार्किक नहीं है। – XcodeNOOB

+0

इसे फेसबुक निर्भरता में भी संकलित करें ('com.facebook.android:facebook-android-sdkodev.2.0') { मॉड्यूल को बहिष्कृत करें: 'support-v4' } – varun

+0

मेरा उत्तर अपडेट किया गया – varun

0

build.gradle फ़ाइल में इस संस्करण का उपयोग करने का प्रयास करें।

compile 'com.android.support:appcompat-v7:23.4.0' 
compile 'com.android.support:design:23.4.0' 
compile 'com.android.support:recyclerview-v7:23.4.0' 
compile 'com.android.support:cardview-v7:23.4.0' 
0

मैं इस का उपयोग नवीनतम एक है कि मैं Gradle फ़ाइल में उपयोग के साथ सभी समर्थन लाइब्रेरी संस्करणों को बदलने के लिए:

configurations.all { 
    resolutionStrategy.eachDependency { DependencyResolveDetails details -> 
     def requested = details.requested 
     if (requested.group == 'com.android.support') { 
      if (!requested.name.startsWith("multidex")) { 
       details.useVersion "26.0.1" 
      } 
     } 
    } 
} 
0

आपका त्रुटि:

java.util.zip.ZipException: duplicate entry: android/support/v4/print/PrintHelperKitkat$2$1.class

चरण 1 : इस मामले में मुख्य संकेत एंड्रॉइड/समर्थन/v4/प्रिंट/2 $ 1.class

चरण 2 PrintHelperKitkat $: वर्ग के लिए सर्च कर रहे हैं, अपने मामले "PrintHelperKitkat.class" (AndroidStudio में में सिर्फ विंडोज पर Ctrl + N हिट या सीएमडी-ओ पर मैक)

चरण 3: देखें कि कौन सा जार इसमें है - एंड्रॉइड स्टूडियो इसे पॉपअप में लिख देगा।

चरण 4: यह बाहर निकालें सभी बनाता है से,

उदाहरण के लिए

:

com.android.support:support-v4:_____

compile('your_conflicted_dependency') 
    { 
     exclude module: 'support-v4' 
    } 

In my case my one dependency also included in my another AAR. So I deleted that dependency

संबंधित मुद्दे