从android studio中的渐变路径中删除文件/jar/class

从android studio中的渐变路径中删除文件/jar/class,android,android-studio,gradle,android-gradle-plugin,build.gradle,Android,Android Studio,Gradle,Android Gradle Plugin,Build.gradle,我启用了multidex,我正在使用org.apache.http.legacy.jar,并在我的gradle文件中添加了gradle路径。我遇到了异常 Error:Execution failed for task :app:packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry: org/apache/commons/codec/binary/Base64.class 我认为这

我启用了
multidex
,我正在使用
org.apache.http.legacy.jar
,并在我的gradle文件中添加了gradle路径。我遇到了异常

Error:Execution failed for task :app:packageAllDebugClassesForMultiDex'.
> java.util.zip.ZipException: duplicate entry: org/apache/commons/codec/binary/Base64.class
我认为这是因为
jumblr
也在使用
httplegacy
库,所以我认为需要从
jumblr渐变路径
中显式删除
httplegacy库
。请告诉我如何从渐变路径中删除特定的文件/jar/class

更新

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

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

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

        maven {
            url "https://repo.commonsware.com.s3.amazonaws.com"
        }
        maven {
            url "https://s3.amazonaws.com/repo.commonsware.com"
        }
    }

    android {
        useLibrary 'org.apache.http.legacy'
        compileSdkVersion 23
        buildToolsVersion "23.0.0"
        dexOptions {
            incremental true
            javaMaxHeapSize "4g"
        }

        defaultConfig {
            applicationId "com.example.myapp"
            minSdkVersion 17
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
            // Enabling multidex support.
            multiDexEnabled true
        }
        buildTypes {
            debug {
                shrinkResources true
            }
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    //    configurations {
    //        all*.exclude group: 'org.apache', module: 'commons'
    //    }
    }

    dependencies {

        // Enabling multidex support.
        compile 'com.android.support:multidex:1.0.1'
        //Other Libraries
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile files('libs/okhttp-2.2.0.jar')
        compile files('libs/okhttp-urlconnection-2.2.0.jar')
        compile files('libs/okio-1.2.0.jar')
        compile files('libs/volley.jar')
        compile files ('org.apache.http.legacy.jar')
        compile files('libs/universal-image-loader-1.9.0.jar')
        compile 'com.google.code.gson:gson:2.3'
        compile 'com.android.support:cardview-v7:23.0.0'
        compile 'com.android.support:recyclerview-v7:23.0.0'
        compile 'com.android.support:appcompat-v7:23.0.0'
        compile 'com.android.support:design:23.0.0'
        compile 'com.jpardogo.materialtabstrip:library:1.1.0'
        compile 'com.pkmmte.view:circularimageview:1.1'
        //    compile 'com.github.satyan:sugar:1.3'
        compile 'com.squareup.picasso:picasso:2.5.2'
        compile 'com.googlecode.mp4parser:isoparser:1.0.5.4'
        compile 'org.bytedeco:javacv:1.0'
        compile 'org.bytedeco.javacpp-presets:opencv:2.4.11-0.11:android-x86'
        compile 'org.bytedeco.javacpp-presets:ffmpeg:2.6.1-0.11:android-x86'
        compile 'org.bytedeco.javacpp-presets:opencv:2.4.11-0.11:android-arm'
        compile 'org.bytedeco.javacpp-presets:ffmpeg:2.6.1-0.11:android-arm'
        compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.3.0'
        compile project(':vidEffect')
        //      For Endless adapter
        compile 'com.commonsware.cwac:adapter:1.0.+'
        compile 'com.commonsware.cwac:endless:1.2.3'
        //      For Facebook
        compile 'com.facebook.android:facebook-android-sdk:4.6.0'
        //      For Twitter
        compile('com.twitter.sdk.android:twitter:1.8.0@aar') {
            transitive = true;
        }
        compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
            transitive = true;
        }
        //      For Tumblr
        compile files('libs/signpost-commonshttp4-1.2.jar')
        compile files('libs/signpost-core-1.2.jar')
       compile 'com.google.guava:guava:18.0'
        compile project(':ViewPagerIndicator')
            compile ('com.tumblr:jumblr:0.0.11'){
                transitive = true;
                exclude module: 'Base64';
            }
//Incase we have no choice but to use source code
    //    compile project(':jumblr')
    }

我想你可以用排除法

compile('jumblr.jar') {
    transitive = true;
    exclude module: 'Base64';
}


@Niko Yuwono jumblr被添加为gradle path,因此它不是jar。
org.apache.http.legacy.jar
是一个jar文件,其中
jumblr
被添加为
gradle path
。它们都包含相同的类。因此我想从两个库中的任何一个库中删除冲突的类files@MuhammadUmairShafique你能给我看看你的身材吗,格雷德尔依赖关系?@MuhammadUmairShafique更新后的答案如何?还是不走运?@NikoYuwono使用module关键字以正确的方式排除类/包?
compile ('com.tumblr:jumblr:0.0.11') {
    transitive = true;
    exclude module: 'Base64';
}