Gradle中 依赖方式区别

implementation:与compile对应,会添加依赖到编译路径,并且会将依赖打包到输出(aar或apk),但是在编译时不会将依赖的实现暴露给其他module,也就是只有在运行时其他module才能访问这个依赖中的实现。使用这个配置,可以显著提升构建时间,因为它可以减少重新编译的module的数量。建议,尽量使用这个依赖配置。

api:等同于 compile, 用 api 指令编译,表示 三方库的依赖对 module 是可见的,即等同 app Module 可以使用此三方库依赖。

compileOnly:与 provided 对应,Gradle 把依赖加到编译路径,编译时使用,不会打包到输出(aar 或 apk)。这可以减少输出的体积,在只在编译时需要,在运行时可选的情况,很有用。

runtimeOnly:与 apk 对应。Gradle添加依赖只打包到 apk,运行时使用,但不会添加到编译路径。这个没有使用过。

annotationProcessor:与 compile 对应,用于注解处理器的依赖配置,这个没用过。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容