Gradle重命名maven依赖包(HttpComponents,Android)

时间:2013-10-14 13:15:37

标签: java android maven gradle apache-httpclient-4.x

使用和选择在Android上发出HTTP(S)请求的方法是一个长期的痛苦。

虽然Google希望我们使用HttpURLConnection,但有些人更喜欢使用HttpClient。

这个库https://code.google.com/p/httpclientandroidlib/带有打包脚本。

我宁愿使用与Android构建环境更加集成的东西。

是否有可能使用Gradle以与httpclientandroidlib相同的方式重新打包Maven依赖(整棵树,包括httpclient,httpcomponents,httpmime,...)?

最好的方案是进行gradle下载,重新打包并以相同的透明方式链接这些库。

的gradle:

dependencies {
    compile 'org.apache.httpcomponents:httpclient:4.2.3'
    compile 'org.apache.httpcomponents:httpmime:4.2.3'
}

1 个答案:

答案 0 :(得分:1)

从org.apache.http到其他名称空间的简单重新打包有一个缺点,即HttpClient与针对stock API编译的第三方库不兼容。有计划重新设计HttpClient 4.3,专门针对Android完全兼容4.0 BETA1 API,并且大多数4.3功能都是后端移植到它。真的很遗憾,减轻Android的HttpClient分支的损害的方式似乎是通过创建另一个分支。谢谢谷歌。

新信息
Apache HttpComponents仅为Android创建了HttpClient库的旋转,可在此处获取:https://hc.apache.org/httpcomponents-client-4.3.x/android-port.html