如何管理 Gradle 模块之间的依赖关系?
Posted 小陈乱敲代码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何管理 Gradle 模块之间的依赖关系?相关的知识,希望对你有一定的参考价值。
在多模块项目中,手动管理依赖项可能具有挑战性。例如,如果您在修改另一个模块上的库版本后忘记更新库版本,您的项目将有一个重复的库。
从Gradle 7.4.1开始,版本目录是管理 Gradle 项目(也称为模块)之间依赖关系的推荐方式。
要使用版本目录,只需libs.versions.toml在根项目中添加文件。
在toml文件中,您可以添加项目的依赖项。
[versions]
compose = "1.2.1"
[libraries]
compose-foundation = module = "androidx.compose.foundation:foundation", version.ref = "compose"
compose-material = module = "androidx.compose.material:material", version.ref = "compose"
compose-tooling = module = "androidx.compose.ui:ui-tooling", version.ref = "compose"
compose-ui = module = "androidx.compose.ui:ui", version.ref = "compose"
[bundles]
compose = ["compose-foundation", "compose-material", "compose-tooling", "compose-ui"]
而已!这些依赖项在您的 Gradle 项目中可用。
以下是您如何在项目的build.gradle.kts.
dependencies
implementation(libs.compose.foundation)
implementation(libs.compose.material)
implementation(libs.compose.tooling)
implementation(libs.compose.ui)
请注意,Gradle 将破折号 ( -) 分隔符转换为点 ( .)。从compose-foundation到compose.foundation。
使用版本目录的其他好处是:
- 某些库的集中版本。
通过使用version.ref,我们可以为每个库分配相同的撰写版本。因此,您只需要在一个地方更新库版本。
- 分组依赖项。
通常,我们有许多依赖项应该一起声明。我们可以使用 来缩短依赖声明bundle,就像这样。
dependencies
implementation(libs.bundles.compose)
概括
通过使用版本目录,我们可以更轻松地管理依赖关系。这对于多模块项目很有用,这在中型或大型软件项目中很常见。
以上是关于如何管理 Gradle 模块之间的依赖关系?的主要内容,如果未能解决你的问题,请参考以下文章