Failed resolution of: Lorg/apache/hc/core5/http/message/BasicNameValuePair;

这是我引用的库文件

implementation ("com.esri.arcgisruntime:arcgis-android:100.15.3")

使用ArcGIS绘制天地图报错如下:

Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/hc/core5/http/message/BasicNameValuePair;

查询资料得知是Android 9以后不支持 http库并删除掉该库,Google官方推荐使用HttpURLConnection,但是ArcGIS是多平台开发,还是引用了Http,导致找不到该库文件

以下是常规Groovy构建build.gradle文件

groovy 复制代码
android {
   defaultConfig {
       // 1.加入这句话
       useLibrary 'org.apache.http.legacy'
   }

   packagingOptions {
       // 2.加入这句话
       exclude 'META-INF/DEPENDENCIES'
       exclude 'META-INF/NOTICE'
       exclude 'META-INF/LICENSE'
       exclude 'META-INF/LICENSE.txt'
       exclude 'META-INF/NOTICE.txt'
   }
}

dependencies {
   //3.加入这句话
   api 'org.apache.httpcomponents.client5:httpclient5:5.3'
}

由于我使用的是kotlin构建项目

所以build.gradle.kts修改如下

kotlin 复制代码
android {
   defaultConfig {
       // 1.加入这句话
       useLibrary("org.apache.http.legacy")
   }

// 2.加入这句话
    packagingOptions(Action {
        excludes.add("META-INF/LGPL2.1")
        excludes.add("META-INF/LICENSE")
        excludes.add ("META-INF/NOTICE")
        excludes.add("META-INF/DEPENDENCIES")
        excludes.add("META-INF/LICENSE.txt")
        excludes.add("META-INF/NOTICE.txt")
    })
}

dependencies {
   //3.加入这句话
   api ("org.apache.httpcomponents.client5:httpclient5:5.3")
}
相关推荐
板鸭〈小号〉2 小时前
应用层协议 HTTP
网络·网络协议·http
HIT_Weston3 小时前
45、【Ubuntu】【Gitlab】拉出内网 Web 服务:http.server 分析(二)
前端·http·gitlab
yuanjj883 小时前
域格移芯平台模块FTP下载应用
单片机·物联网·网络协议
组合缺一4 小时前
Solon AI 开发学习6 - chat - 两种 http 流式输入输出
python·学习·http
小李独爱秋4 小时前
Cisco Packet Tracer仿真实验 12:运输层端口
网络·网络协议·计算机网络·智能路由器·仿真实验
xxp43214 小时前
Qt 网络编程 UDP通信
网络·网络协议·udp
草莓熊Lotso7 小时前
unordered_map/unordered_set 使用指南:差异、性能与场景选择
java·开发语言·c++·人工智能·经验分享·python·网络协议
wasp52014 小时前
Apache Hudi 项目总体分析
数据挖掘·apache·hudi·数据湖仓
二狗mao14 小时前
Uniapp使用websocket进行ai回答的流式输出
websocket·网络协议·uni-app
1560820721920 小时前
基于7VX690T FPGA实现万兆TCP/IP资源和性能测试
网络协议·tcp/ip·fpga开发