为 Amazon SDK for Java 设置 GraalVM 原生映像项目 - Amazon SDK for Java 2.x
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

为 Amazon SDK for Java 设置 GraalVM 原生映像项目

在 2.16.1 及更高版本中,Amazon SDK for Java 为 GraalVM 原生映像应用程序提供了开箱即用的支持。使用 archetype-app-quickstart Maven 原型设置具有内置原生映像支持的项目。

先决条件

使用原型创建项目

要创建具有内置原生映像支持的 Maven 项目,请在终端或命令提示符窗口中使用以下命令。

注意

com.example.mynativeimageapp 替换为您的应用程序的完整程序包命名空间。还要将 mynativeimageapp 替换为您的项目名称。这将成为项目的目录的名称。

mvn archetype:generate \ -DarchetypeGroupId=software.amazon.awssdk \ -DarchetypeArtifactId=archetype-app-quickstart \ -DarchetypeVersion=2.16.1 \ -DnativeImage=true \ -DhttpClient=apache-client \ -Dservice=s3 \ -DgroupId=com.example.mynativeimageapp \ -DartifactId=mynativeimageapp \ -DinteractiveMode=false

此命令创建一个 Maven 项目,该项目配置了 Amazon SDK for Java、Amazon S3 和 ApacheHttpClient HTTP 客户端的依赖项。它还包含 GraalVM 原生映像 Maven 插件的依赖项,使您可以使用 Maven 构建原生映像。

要包含其他 Amazon Web Services 的依赖项,请将 -Dservice 参数的值设置为该服务的构件 ID。示例包括 dynamodbcomprehendpinpoint。有关构件 ID 的完整列表,请参阅 Maven Central 中的 software.amazon.awssdk 托管依赖项列表。

要使用异步 HTTP 客户端,请将 -DhttpClient 参数设置为 netty-nio-client。要使用 UrlConnectionHttpClient 作为同步 HTTP 客户端,而不使用 apache-client,请将 -DhttpClient 参数设置为 url-connection-client

生成原生映像

创建项目后,从项目目录(例如 mynativeimageapp)中运行以下命令:

mvn package -P native-image

这将在 target 目录(例如 target/mynativeimageapp)中创建原生映像应用程序。