android–Gradle依赖配置:实现vs api vs runonly vs compileonly

android–Gradle依赖配置:实现vs api vs runonly vs compileonly,第1张

概述无法理解AndroidStudio3.0中引入的最新gradle依赖配置,即implementation,api,compileonly和runtimeonly.解决方法:请参考android开发者官方网站上的链接:AndroidStudio3.0NewGradleConfiguration.根据上面链接中提到的描述:Implementation:Whenyourmoduleconfigures

无法理解Android Studio 3.0中引入的最新gradle依赖配置,即implementation,API,compileonly和runtimeonly.

解决方法:

请参考androID开发者官方网站上的链接:Android Studio 3.0 New Gradle Configuration.

根据上面链接中提到的描述:

Implementation: When your module configures an implementation dependency, it’s letting Gradle kNow that the module does not want to
leak the dependency to other modules at compile time. That is, the
dependency is available to other modules only at runtime. Using this
dependency configuration instead of API or compile can result in
significant build time improvements because it reduces the amount of
projects that the build system needs to recompile. For example, if an
implementation dependency changes its API, Gradle recompiles only that
dependency and the modules that directly depend on it. Most app and
test modules should use this configuration.
API: When a module includes an API dependency, it’s letting Gradle kNow that the module wants to transitively export that
dependency to other modules, so that it’s available to them at both
runtime and compile time. This configuration behaves just like compile
(which is Now deprecated), and you should typically use this only in
library modules. That’s because, if an API dependency changes its
external API, Gradle recompiles all modules that have access to that
dependency at compile time. So, having a large number of API
dependencIEs can significantly increase build times. Unless you want
to expose a dependency’s API to a separate test module, app modules
should instead use implementation dependencIEs.compileOnly: Gradle adds the dependency to the compilation classpath only (it is not added to the build output). This is useful
when you’re creating an AndroID library module and you need the
dependency during compilation, but it’s optional to have present at
runtime. That is, if you use this configuration, then your library
module must include a runtime condition to check whether the
dependency is available, and then gracefully change its behavior so it
can still function if it’s not provIDed. This helps reduce the size of
the final APK by not adding transIEnt dependencIEs that aren’t
critical. This configuration behaves just like provIDed (which is Now
deprecated).runtimeonly: Gradle adds the dependency to the build output only, for use during runtime. That is, it is not added to the compile
classpath. This configuration behaves just like apk (which is Now
deprecated).
总结

以上是内存溢出为你收集整理的android – Gradle依赖配置:实现vs api vs runonly vs compileonly全部内容,希望文章能够帮你解决android – Gradle依赖配置:实现vs api vs runonly vs compileonly所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1097369.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存