HttpClient依赖关系警告Android Studio

时间:2015-11-19 09:58:51

标签: android android-studio gradle httpclient apache-httpclient-4.x

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"
    defaultConfig {
        applicationId "com.example"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    maven { url "https://jitpack.io" }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:support-v13:23.1.0'
    compile 'com.android.support:appcompat-v7:23.1.0'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.github.PhilJay:MPAndroidChart:v2.1.6'
    compile 'oauth.signpost:signpost-core:1.2.1.2'
    compile 'oauth.signpost:signpost-commonshttp4:1.2.1.2'
    compile('org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2')
    compile ('oauth.signpost:signpost-commonshttp4:1.2.1.2') {
        exclude module: 'commons-logging'
        exclude module: 'httpcore'
        exclude module: 'httpclient'
    }
    compile ('oauth.signpost:signpost-core:1.2.1.2') {
        exclude module: 'commons-codec'
        }
}

我收到以下警告

Warning:Dependency org.apache.httpcomponents:httpclient:4.0.1 is ignored for debug as it may be conflicting with the internal version provided by Android.
         In case of problem, please repackage it with jarjar to change the class packages
Warning:Dependency org.apache.httpcomponents:httpclient:4.0.1 is ignored for release as it may be conflicting with the internal version provided by Android.
         In case of problem, please repackage it with jarjar to change the class packages

不知道如何处理它,任何帮助都会感激

2 个答案:

答案 0 :(得分:1)

删除此行,它是双重

compile 'oauth.signpost:signpost-commonshttp4:1.2.1.2'

答案 1 :(得分:1)

一些事情:

compile 'oauth.signpost:signpost-commonshttp4:1.2.1.2'
compile('org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2')
compile ('oauth.signpost:signpost-commonshttp4:1.2.1.2') {
    exclude module: 'commons-logging'
    exclude module: 'httpcore'
    exclude module: 'httpclient'
}

您已添加oauth.signpost:signpost-commonshttp4:1.2.1.2两次:一次没有任何排除,一次没有。尝试删除一个,不要看你的警告是否消失(他们应该)。

此外,使用最新的构建工具版本(您可能需要升级到23.0.2),您可以删除此行:

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

(旁注:可能应该是provided,而不是compile

然后添加到android部分,illustrated here

useLibrary 'org.apache.http.legacy'