软件项目通常依赖于其他库才能运行。这些库可以来自同一构建中的其他项目,也可以来自外部仓库。
Gradle 的依赖管理基础设施提供了 API,用于声明、解析和暴露项目所需和提供的二进制文件。
理解 Gradle 中的依赖管理对于将项目组织成组件非常重要。当您想要重用现有库或需要在管理库版本的同时升级这些库时,它也很重要。
让我们看一个 Java 项目,其中的代码依赖于 Guava,Guava 是 Google Core Java 库套件。该项目的构建文件包含以下内容
build.gradle.kts
dependencies {
implementation("com.google.guava:guava:32.1.2-jre")
api("org.apache.juneau:juneau-marshall:8.2.0")
}
build.gradle
dependencies {
implementation("com.google.guava:guava:32.1.2-jre")
api("org.apache.juneau:juneau-marshall:8.2.0")
}
在 dependencies
代码块中,声明依赖时有三点需要注意
-
配置:
implementation
也称为依赖应用的作用域 -
模块 ID:
com.google.guava:guava
由group
和可唯一标识的工件name
组成 -
版本:
32.1.2-jre
并非总是必需
依赖可以是本地的或外部的。要让 Gradle 知道在哪里查找外部依赖,请使用 Build 文件 中的 repositories{}
代码块。
让我们扩展我们的示例
build.gradle.kts
repositories {
google()
mavenCentral()
}
dependencies {
implementation("com.google.guava:guava:32.1.2-jre")
api("org.apache.juneau:juneau-marshall:8.2.0")
}
build.gradle
repositories {
google()
mavenCentral()
}
dependencies {
implementation("com.google.guava:guava:32.1.2-jre")
api("org.apache.juneau:juneau-marshall:8.2.0")
}
在此示例中,Gradle 从 Maven Central 和 Google 仓库 获取 guava
和 juneau-marshall
依赖。