在AOSP的Android.bp中通过URL引入AAR文件报错求助
解决Android.bp中直接用URL引入AAR的问题
问题原因
Soong构建系统(Android.bp基于该系统)的android_library_import模块不支持直接通过远程URL引用AAR文件,aars字段仅接受本地文件路径,这就是直接使用URL时报错的核心原因。
替代方案:使用maven_import模块
如果想要无需手动下载AAR到本地,直接引入远程库,应该使用Soong提供的maven_import模块,通过Maven坐标来依赖远程库。
配置示例
替换原有android_library_import配置为以下内容:
maven_import { name: "androidx.activity_activity-composelib-nodeps", group: "androidx.activity", artifact: "activity-compose", version: "1.6.1", sdk_version: "31", apex_available: [ "//apex_available:platform", "//apex_available:anyapex", ], min_sdk_version: "21", repositories: [ "https://maven.google.com", ], // 若不需要传递依赖,可添加以下参数 // export_include_deps: false, }
配置说明
group/artifact/version:对应Maven库的GAV坐标,与你目标AAR的坐标完全匹配repositories:指定远程Maven仓库地址,这里使用Google官方Maven仓库- 该模块会自动从远程仓库下载对应AAR及相关依赖(若不需要依赖传递,可启用注释中的参数)
注意事项
- 确保构建环境能够正常访问配置的远程Maven仓库,内网环境可能需要配置代理或镜像仓库
- 如果项目已在全局配置了通用Maven仓库,可省略
repositories字段
内容的提问来源于stack exchange,提问作者Lekshmi S Krishnan
相关产品推荐
相关产品推荐

