当我们在使用Android Studio新版本的时候,往往会需要相应的gradle版本,在高版本的gradle里使用 compile 会提示如下警告:
为了消除这个warning,可以选择使用’implementation’ 和 ‘api’,当我们在子模块使用 implementation引用jar包、三方库时,主模块在引用该子模块时不能使用子模块引用的jar、三方库里的api。这个就是需要我们注意的地方了,如果子模块里引用的库需要在主模块里使用,就得换成api的方式引入,也即跟之前的compile作用一致。
注意:最新官方推荐 implementation 用来代替 compile, implementation 会使AS编译速度更快,但是implementation声明的依赖包只限于模块内部使用,不允许其他模块使用;api声明的依赖包时, 模块依赖于此模块,此模块使用api声明的依赖包是可以被其他模块使用的。
参考文献
https://docs.gradle.org/current/userguide/java_library_plugin.html#sec:java_library_usage