Android 依赖库找不到

本文探讨了在Android Studio中使用repo进行项目模块化时,遇到的依赖传递问题。详细解释了compile、api和implementation的区别,以及如何正确配置library模块的依赖,确保app模块能够访问所需的第三方库。

本文记录一个依赖文件找不到的问题,并多加几个关键词,希望遇到的人能快速解决

最近两天弄项目模块化,使用repo管理项目。拆分项目后的结构大概如下:

sample
	- app
	- library1
	- library2

其中library1又依赖了其他第三方库。build.gradle示例如下:

implementation 'com.squareup.okhttp3:okhttp:3.8.1'

问题来了。在app中我想用okhttp,最后发现代码中竟然找不到okhttp

搜了一圈,发现问题出在library1build.gradle implementation上。因为以前都是cmopile,现在Android Studio会提示用implementation替代compile,就自然而然的改了。

其实,compile换成了implementationapi两个。区别如下:

implementation:只对当前module提供接口,不对外公开。依赖不会传递到app

api:用该方式依赖的库会参与编译和打包,会增加编译时间。依赖会传递到app

所以,解决方案是:library1中的依赖用api 'com.squareup.okhttp3:okhttp:3.8.1'就好了。

更多compileapiimplementation的区别请自行搜索。

=== END ===

以下是搜索关键词,方便用户搜索。

android依赖找不到、repo、submodule、模块、gradle依赖、build.gradle依赖、依赖传递、传递依赖、aar找不到、第三方依赖无效

转载于:https://my.oschina.net/atearsan/blog/3019361

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值