android डुप्लिकेट पुस्तकालयों को कैसे हटाएं धीरे-धीरे के माध्यम से जोड़ा जाए?




android-gradle android-library (3)

यदि पुस्तकालयों के दोहराव के कारण त्रुटि उत्पन्न होती है तो आप packingOptions का निर्माण build.gradle फ़ाइल में कर सकते हैं।

android {
  ....
  packagingOptions {
    exclude '.....'
    pickFirst '.....'
  }
}

मैं अपनी परियोजना में दो पुस्तकालयों का उपयोग कर रहा हूं। एक यह है और दूसरा यह है

जब भी मैं ऐप के साथ टेस्ट लाइब्रेरी को संपादित करता हूं, तो यह प्रदर्शित नहीं होता है कि शीर्ष-स्तरीय अपवाद :

Error:Execution failed for task ':mobile:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    E:\Android\me\me\sdk\build-tools\21.1.2\dx.bat --dex --no-optimize --output C:\Project\RemoteiT\RemoteiT\mobile\build\intermediates\dex\debug --input-list=C:\Project\RemoteiT\RemoteiT\mobile\build\intermediates\tmp\dex\debug\inputList.txt
Error Code:
    2
Output:
    UNEXPECTED TOP-LEVEL EXCEPTION:
    com.android.dex.DexException: Multiple dex files define Lcom/nineoldandroids/animation/Animator$AnimatorListener;
        at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
        at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
        at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
        at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
        at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
        at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
        at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
        at com.android.dx.command.dexer.Main.run(Main.java:246)
        at com.android.dx.command.dexer.Main.main(Main.java:215)
        at com.android.dx.command.Main.main(Main.java:106)

मुझे लगता है कि उपरोक्त त्रुटि से पता चलता है कि com.nineoldandroids दो बार या विरोधाभासी जोड़ा जाता है।

इसलिए मैंने इसे build.gradle फ़ाइल में निकालने का प्रयास किया। लेकिन यह अभी भी त्रुटि दिखा रहा है!

क्या मेरी धारणा सही है? या कहीं मैं गलत था?

Build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "me.aruhan.remt"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

configurations {
    // to avoid double inclusion of support libraries
    all*.exclude group: 'com.nineoldandroids', module: 'materialDesign'
}

dependencies {
    compile 'com.android.support:appcompat-v7:21.0.0'
    compile project(':materialDesign')
    compile 'com.rengwuxian.materialedittext:library:1.7.1'
}

फ़ाइल> परियोजना संरचना> अंदर जाएं मॉड्यूल का चयन करें> आपकी निर्भरता पर दाहिनी ओर क्लिक करें और देखें कि डुप्लिकेट लायब्रेरी मौजूद हैं या नहीं?

इसके अलावा अमान्य / पुनः प्रारंभ कैश का प्रयास करें


इसे कॉन्फ़िगरेशन में जोड़ने के बजाय मैंने केवल इस तरह की लाइब्रेरी के लिए बहिष्कृत कहा:

compile ('com.rengwuxian.materialedittext:library:1.7.1') {
   exclude group: 'com.nineoldandroids', module: 'library'
}




android-library