当前位置: 首页 > 教程 > Gradle >

Gradle依赖管理

精华
小牛编辑
117浏览
2023-03-14

Gradle构建脚本定义了构建项目的过程; 每个项目包含一些依赖项和一些发表项。依赖性意味着支持构建项目的东西,例如来自其他项目的所需JAR文件以及类路径中的外部JAR(如JDBC JAREh-cache JAR)。发布表示项目的结果,如测试类文件和构建文件,如war文件。

Gradle负责构建和发布结果。 发布基于定义的任务。 可能希望将文件复制到本地目录,或将其上传到远程Maven或lvy存储库,或者可以在同一个多项目构建中使用另一个项目的文件。 发布的过程称为发布。

声明依赖关系

Gradle遵循一些特殊语法来定义依赖关系。 以下脚本定义了两个依赖项,一个是Hibernate core 3.6.7,第二个是Junit 4.0和更高版本。如下面的代码所示,可在build.gradle文件中使用此代码。

apply plugin: 'java'

repositories {
   mavenCentral()
}

dependencies {
   compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.7.Final'
   testCompile group: 'junit', name: 'junit', version: '4.+'
}

依赖关系配置

依赖关系配置只是定义了一组依赖关系。 您可以使用此功能声明从Web下载外部依赖关系。这定义了以下不同的标准配置。

  • 编译 − 编译项目的生产源所需的依赖关系。
  • 运行时 - 运行时生产类所需的依赖关系。 默认情况下,还包括编译时依赖项。
  • 测试编译 - 编译项目测试源所需的依赖项。 默认情况下,它包括编译的产生的类和编译时的依赖。
  • 测试运行时 - 运行测试所需的依赖关系。 默认情况下,它包括运行时和测试编译依赖项。

外部依赖

外部依赖是一种依赖。 这是对当前构建之外构建的一些文件的依赖,并且存储在某种类型的存储库中,例如:Maven central,corporate Maven或lvy repository或本地文件系统中的目录。
以下代码片段是定义外部依赖关系。 在build.gradle文件中使用如下代码。

dependencies {
   compile group: 'org.hibernate', name: 'hibernate-core', version: '3.6.7.Final'
}

存储库

在添加外部依赖关系时, Gradle在存储库中查找它们。 存储库只是文件的集合,按分组,名称和版本来组织构造。 默认情况下,Gradle不定义任何存储库。 我们必须至少明确地定义一个存储库。 下面的代码片段定义了如何定义 maven 仓库。 在build.gradle文件中使用此代码。

repositories {
   mavenCentral()
}

下面的代码是定义远程maven。 在build.gradle文件中可使用下面代码。

repositories {
   maven {
      url "http://repo.mycompany.com/maven2"
   }
}

发布文件

依赖关系配置也用于发布文件。 这些已发布的文件称为工件。 通常,我们使用插件来定义工件。 但是需要告诉Gradle在哪里发布文件。可以通过将存储库附加到上传存档任务来实现此目的。 请查看以下用于发布Maven存储库的语法。 执行时,Gradle将根据项目需求生成并上传Pom.xml。 在build.gradle文件中使用此代码。

apply plugin: 'maven'

uploadArchives {
   repositories {
      mavenDeployer {
         repository(url: "file://localhost/tmp/myRepo/")
      }
   }
}