将 SDK 与 Gradle 结合使用 - AWS SDK for Java 1.x

自2024年7月31日起, AWS SDK for Java 1.x已进入维护模式,并将于2025年12月31日end-of-support上线。我们建议您迁移到AWS SDK for Java 2.x以继续接收新功能、可用性改进和安全更新。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 SDK 与 Gradle 结合使用

要管理 Gradle 项目的 SDK 依赖项,请将 AWS SDK for Java 的 Maven BOM 导入到应用程序的 build.gradle 文件中。

注意

在以下示例中,将构建文件中的 1.12.529 替换为 AWS SDK for Java 的有效版本。在 Maven Central 存储库中查找最新版本。

Gradle 4.6 或更高版本的项目设置

自 Gradle 4.6 开始,通过声明针对 BOM 的依赖项,便可以使用 Gradle 的经过改进的 POM 支持功能来导入材料清单 (BOM) 文件。

  1. 如果您使用的是 Gradle 5.0 或更高版本,请跳至步骤 2。否则,请在 settings.gradle 文件中启用 IMPROVED_POM_SUPPORT 功能。

    enableFeaturePreview('IMPROVED_POM_SUPPORT')
  2. 将 BOM 添加到应用程序 build.gradle 文件的 dependencies 部分。

    ... dependencies { implementation platform('com.amazonaws:aws-java-sdk-bom:1.12.529') // Declare individual SDK dependencies without version ... }
  3. dependencies 部分中指定要使用的开发工具包模块。例如,以下内容包括 Amazon Simple Storage Service (Amazon S3) 的依赖项。

    ... dependencies { implementation platform('com.amazonaws:aws-java-sdk-bom:1.12.529') implementation 'com.amazonaws:aws-java-sdk-s3' ... }

Gradle 会自动使用 BOM 中的信息来解析开发工具包依赖项的正确版本。

以下是包含 Amazon S3 的依赖项的完整 build.gradle 文件的示例。

group 'aws.test' version '1.0-SNAPSHOT' apply plugin: 'java' sourceCompatibility = 1.8 repositories { mavenCentral() } dependencies { implementation platform('com.amazonaws:aws-java-sdk-bom:1.12.529') implementation 'com.amazonaws:aws-java-sdk-s3' }
注意

在前面的示例中,将 Amazon S3 的依赖项替换为您将在项目中使用的 AWS 服务的依赖项。由 AWS SDK for Java BOM 管理的模块(依赖项)列在 Maven Central 存储库中。

用于 4.6 之前的 Gradle 版本的项目设置

早于 4.6 的 Gradle 版本缺少本机 BOM 支持。要管理项目的AWS SDK for Java依赖项,请使用 Spring 的适用于 Gradle 的依赖项管理插件为开发工具包导入 Maven BOM。

  1. 向应用程序的 build.gradle 文件添加依赖项管理插件。

    buildscript { repositories { mavenCentral() } dependencies { classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE" } } apply plugin: "io.spring.dependency-management"
  2. 将 BOM 添加到该文件的 dependencyManagement 部分。

    dependencyManagement { imports { mavenBom 'com.amazonaws:aws-java-sdk-bom:1.12.529' } }
  3. dependencies 部分中指定您将使用的开发工具包模块。例如,以下内容包含 Amazon S3 的依赖项。

    dependencies { compile 'com.amazonaws:aws-java-sdk-s3' }

Gradle 会自动使用 BOM 中的信息来解析开发工具包依赖项的正确版本。

以下是包含 Amazon S3 的依赖项的完整 build.gradle 文件的示例。

group 'aws.test' version '1.0' apply plugin: 'java' sourceCompatibility = 1.8 repositories { mavenCentral() } buildscript { repositories { mavenCentral() } dependencies { classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE" } } apply plugin: "io.spring.dependency-management" dependencyManagement { imports { mavenBom 'com.amazonaws:aws-java-sdk-bom:1.12.529' } } dependencies { compile 'com.amazonaws:aws-java-sdk-s3' testCompile group: 'junit', name: 'junit', version: '4.11' }
注意

在前面的示例中,将 Amazon S3 的依赖项替换为您将在项目中使用的 AWS 服务的依赖项。由 AWS SDK for Java BOM 管理的模块(依赖项)列在 Maven Central 存储库中。

有关使用 BOM 指定开发工具包依赖项的更多信息,请参阅将开发工具包与 Apache Maven 一起使用