java.util.zip.ZipException:重复条目:org / apache / http / HttpMessage.class

时间:2015-10-24 08:40:11

标签: android android-multidex

我收到以下错误消息。过去两天我没有尝试解决它,但没有解决问题。     错误:任务':app:packageAllDebugClassesForMultiDex'执行失败。

  

java.util.zip.ZipException:重复条目:org / apache / http / HttpMessage.class       这是我的build.gradle(app)

apply plugin: 'com.android.application'


android {
compileSdkVersion 23
buildToolsVersion '23.0.0'

defaultConfig {
    applicationId "com.mycompany.newlogin"
    minSdkVersion 15
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
    multiDexEnabled true
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
productFlavors {

}
useLibrary 'org.apache.http.legacy'
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:multidex:1.0.0'
compile 'com.google.guava:guava-jdk5:17.0'
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:design:23.0.1'
compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'org.apache.httpcomponents:httpclient:4.5'
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'

}

请帮助我。提前谢谢你。

3 个答案:

答案 0 :(得分:5)

我也有此错误,我通过删除httpcore

解决了这个问题

build.gradle(app)删除这些行

compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'org.apache.httpcomponents:httpclient:4.5'

然后将最新的apache库添加到build.gradle(app)

  compile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5.1'

答案 1 :(得分:2)

看一下你引用的包,org.jbundle.util.osgi.wrapped.org.apache.http.client似乎至少包含一些httpcore类,特别是你的错误消息中提到的那个。所以我想你根本不能并且不应该同时使用它们作为依赖关系,而只能使用你真正需要的依赖关系。

答案 2 :(得分:0)

以下库导致冲突,我将其从build.gradle

中删除
  compile 'com.loopj.android:android-async-http:1.4.9'
  compile 'org.apache.httpcomponents:httpcore:4.4.1'

我只留下:

    compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'