如何使用 Java 執行 AWS Batch 任務?

2 分的閱讀內容
0

我想要使用 Java 執行 AWS Batch 任務。我該如何設定?

解決方法

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請確定您使用的是最新的 AWS CLI 版本

準備您的環境

1.    依照 Oracle 網站上的下載說明安裝 Java。

2.    依照 Eclipse Foundation 網站上的下載說明安裝 Eclipse。

3.    建立 AWS Batch 運算環境任務定義任務佇列

4.    執行下列 describe-compute-environments AWS CLI 命令,確認任務佇列已指派給有效的運算環境:

**重要:**用您的運算環境名稱取代 your-compute-env-name

$ aws batch describe-compute-environments --compute-environments your-compute-env-name

5.    確認命令輸出中的 "status" 值是否為 "VALID"。如果您的運算環境無效,請先使運算環境有效,然後再繼續操作。

注意:您可以使用 Java 程式碼建立 AWS Batch 運算環境、任務定義和任務佇列。不過,您必須先完成將 Java 專案轉換為 Maven 專案一節中的步驟,才能建立資源。如需詳細資訊,請參閱適用於 Java 的 AWS SDK API 參考中的範例程式碼

安裝 AWS Toolkit for Eclipse

1.    開啟 Eclipse 整合式開發環境 (IDE)。

2.    從 Eclipse IDE 功能表列中,選擇說明

3.    在說明下,選擇 Eclipse Marketplace

4.    在 Eclipse Marketplace 中,選擇搜尋索引標籤。

5.    在尋找搜尋方塊中,輸入 AWS

6.    從搜尋結果中,為 AWS Toolkit for Eclipse 選擇安裝

7.    從 Eclipse 功能表列中,選擇導覽

8.    選擇偏好設定。然後,選擇新增存取金鑰 ID私密存取金鑰

建立新的 Java 專案

1.    從 Eclipse IDE 功能表列中,選擇檔案

2.    選擇新增。然後,選擇專案

將 Java 專案轉換為 Maven 專案

1.    在 Eclipse IDE 中,在您建立的 Java 專案上按一下滑鼠右鍵。

2.    選擇設定。然後,選擇轉換為 Maven 專案。Maven 會建立一個 POM.xml 檔案,其中包含有關專案的資訊和用於建置專案的組態詳細資訊。

3.    在檔案中的結束 build 標記之後新增以下程式碼,將所需的相依性新增到 POM.xml 檔案中:

<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-batch -->
    <dependencies>
    <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-batch</artifactId>
    <version>1.11.470</version>
</dependency>
    </dependencies>

**重要:**只有在 POM.xml 檔案中的結束 build 標記之後包含程式碼時,步驟 3 的程式碼才會運作。

建立 Java 程式以提交 AWS Batch 任務

1.    在 Eclipse IDE 中,選擇您建立的專案。

2.    在專案內,在 src 資料夾上按一下滑鼠右鍵。

3.    選擇新增。然後,選擇檔案

4.    將新檔案命名為 BatchClient.java

重要:****.java 副檔名必須與 Java 程式中的公有類別名稱相符。

5.    在檔案中輸入下列程式碼,將 AWS Batch 環境詳細資訊新增至 BatchClient.java 檔案中:

**重要:**用您的佇列名稱取代 new-queue。用您環境所在的 AWS 區域取代 us-east-1。用任務定義取代 sleep30:4

public class BatchClient {
public static void main(String[] args) {
        AWSBatch client = AWSBatchClientBuilder.standard().withRegion("us-east-1").build();
SubmitJobRequest request = new SubmitJobRequest().withJobName("example").withJobQueue("new-queue").withJobDefinition("sleep30:4");
SubmitJobResult response = client.submitJob(request);
System.out.println(response);
}
}

6.    若要提交 AWS Batch 任務並執行 Java 程式,請從執行功能表中選擇執行

注意:如果您收到「無法解析 SubmitJobResult」錯誤,則您必須匯入 SubmitJobResult API 動作所需的套件。若要在 Eclipse IDE 中匯入套件,請執行下列動作:
在 Java 程式碼 BatchClient.java 中,選擇 SubmitJobResult
選擇
上按一下滑鼠右鍵。
選擇來源
選擇新增匯入


AWS 官方
AWS 官方已更新 2 年前