使用AndroidStudio3.0以上版本进行组件式开发发现间接依赖的库报错找不到对应的Library
我的项目是这样的
|--moduleA
|--moduleB
|--moduleC
1 在moduleB的build.gradle文件中依赖moduleA:
implementation project(path: ':moduleA')
2 在moduleC的build.gradle文件中依赖moduleB:
implementation project(path: ':moduleB')
这样moduleC就间接依赖了moduleA
但是在moduleC中使用moduleA的类是直接编译报错找不到
import也无法导入moduleA
解决办法:将moduleB 依赖 moduleA写法换成:
api project(path: ':moduleA')
原因是 :
implementation:依赖只作用于当前的Module而不对外公开;
api:依赖对外公开,而不是只作用于当前module.