

 AWS SDK for Java 1.x は 2025 年 12 月 31 日にend-of-supportしました。新しい機能、可用性の向上、セキュリティ更新のために、[AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html) に移行することをお勧めします。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 構築ツールの使用
<a name="setup-build-tools"></a>

構築ツールを使用すると、Java プロジェクトの開発を管理しやすくなります。構築ツールはいくつかありますが、ここでは一般的な 2 つの構築ツール (Maven と Gradle) を使って起動して実行する方法を説明します。このトピックでは、これらの構築ツールを使用して、プロジェクトに必要な SDK for Java の依存関係を管理する方法を説明します。

**Topics**
+ [Apache Maven で SDK を使用する](setup-project-maven.md)
+ [Gradle とともに SDK を使用する](setup-project-gradle.md)

# Apache Maven で SDK を使用する
<a name="setup-project-maven"></a>

[Apache Maven](https://maven.apache.org/) を使用して、AWS SDK for Java プロジェクトの設定およびビルド、SDK 自体のビルドを行うことができます。

**注記**  
このトピックのガイダンスを使用するには、Maven をインストールしている必要があります。まだインストールしていない場合は、[http://maven.apache.org/](http://maven.apache.org/) にアクセスし、ダウンロードしてインストールしてください。

## 新しい Maven パッケージを作成する
<a name="create-a-new-maven-package"></a>

Maven の基本パッケージを作成するには、ターミナル (コマンドライン) ウィンドウを開いて次のコマンドを実行します。

```
mvn -B archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=org.example.basicapp \
  -DartifactId=myapp
```

*org.example.basicapp* はアプリケーションの完全パッケージ名前空間に置き換え、*myapp* はプロジェクト名 (これがプロジェクトのディレクトリ名になります) に置き換えます。

デフォルトで、[quickstart](http://maven.apache.org/archetypes/maven-archetype-quickstart/) アーキタイプを使用してプロジェクトテンプレートが作成されます。このテンプレートは、多くのプロジェクトで手始めとして使用できます。使用できるアーキタイプは他にもあります。[Maven アーキタイプ](https://maven.apache.org/archetypes/index.html)のページでは、次でパッケージ化されているアーキタイプの一覧を参照できます。`-DarchetypeArtifactId` コマンドに `archetype:generate` 引数を追加すると、特定のアーキタイプを選択して使用できます。例:

```
mvn archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DarchetypeArtifactId=maven-archetype-webapp \
  -DgroupId=org.example.webapp \
  -DartifactId=mywebapp
```

**注記**  
プロジェクトの作成と設定に関する詳細情報は、[Maven の開始方法ガイド](https://maven.apache.org/guides/getting-started/)で提供されています。

## SDK を Maven 依存関係に設定する
<a name="configuring-maven"></a>

プロジェクトで AWS SDK for Java を使用するには、プロジェクトの `pom.xml` ファイルで SDK を依存関係として宣言する必要があります。バージョン 1.9.0 以降では、[個々のコンポーネント](#configuring-maven-individual-components)または [SDK 全体](#configuring-maven-entire-sdk)をインポートできます。

### 個別の SDK モジュールの指定
<a name="configuring-maven-individual-components"></a>

個々 SDK モジュールを選択するには、AWS SDK for Java の Maven 用の部品表 (BOM) を使用します。そうすることによって、指定したモジュールで同じバージョンの SDK が使用され、それらは互いに互換性があることが保証されます。

BOM を使用するには、アプリケーションの `<dependencyManagement>` ファイルに `pom.xml` セクションを追加し、そのセクションで `aws-java-sdk-bom` を依存関係として追加し、使用する SDK のバージョンを指定します。

```
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-bom</artifactId>
      <version>1.11.1000</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>
```

Maven Central で使用可能な最新バージョンの AWS SDK for Java BOM を表示するには、[https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom](https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom) を参照してください。どのモジュール (依存関係) が、プロジェクトの `<dependencies>` ファイルの `pom.xml` セクション内に含めることができる BOM により管理されるのかを確認するには、このページを参照してください。

これで、アプリケーションで使用する個々のモジュールを SDK から選択できるようになりました。BOM で SDK バージョンを既に宣言しているため、各コンポーネントのバージョン番号を指定する必要はありません。

```
<dependencies>
  <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-s3</artifactId>
  </dependency>
  <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-dynamodb</artifactId>
  </dependency>
</dependencies>
```

*AWS Code Sample Catalog* を参照して、特定の AWS のサービス で使用する依存関係を確認することもできます。特定のサービス例の下の POM ファイルを参照してください。例えば、AWS S3 サービスの依存関係に関心がある場合は、GitHub の[完全な例](https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/java/example_code/s3/src/main/java/aws/example/s3/GetAcl.java)を参照してください ( /java/example\$1code/s3 の下の POM を参照してください)。

### すべての SDK モジュールのインポート
<a name="configuring-maven-entire-sdk"></a>

SDK *全体を*依存関係にする場合は、BOM による方法を使用せずに、`pom.xml` で次のように宣言するだけです。

```
<dependencies>
  <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk</artifactId>
    <version>1.11.1000</version>
  </dependency>
</dependencies>
```

## プロジェクトを構築する
<a name="build-your-project"></a>

プロジェクトのセットアップが完了したら、Maven の `package` コマンドを使用してアプリケーションをビルドできます。

```
mvn package
```

このコマンドでは、`0jar` ディレクトリに `target` ファイルが作成されます。

## Maven を使用して SDK をビルドする
<a name="building-with-maven"></a>

Apache Maven を使用して、SDK をソースからビルドできます。そのためには、[GitHub から SDK コードをダウンロード](https://github.com/aws/aws-sdk-java)し、ローカルに解凍して、次の Maven コマンドを実行します。

```
mvn clean install
```

# Gradle とともに SDK を使用する
<a name="setup-project-gradle"></a>

[Gradle](https://gradle.com/) プロジェクトの SDK 依存関係を管理するには、 の Maven BOM AWS SDK for Java をアプリケーションの `build.gradle` ファイルにインポートします。

**注記**  
次の例では、構築ファイルの *1.12.529* を有効なバージョンの AWS SDK for Javaに置き換えます。[Maven Central リポジトリ](https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom/latest)で最新バージョンを検索してください。

## Gradle 4.6 以降のプロジェクト設定
<a name="project-setup-for-gradle-4-6-or-higher"></a>

 [Gradle 4.6 以降](https://docs.gradle.org/4.6/release-notes.html#bom-import)、BOM で依存関係を宣言することにより、Gradle の改善された POM サポート機能を使用して部品表 (BOM) ファイルをインポートできます。

1. Gradle 5.0 以降を使用している場合は、ステップ 2 に進みます。それ以外の場合は、`settings.gradle` ファイルで *IMPROVED\$1POM\$1SUPPORT* 機能を有効にします。

   ```
   enableFeaturePreview('IMPROVED_POM_SUPPORT')
   ```

1. アプリケーションの `build.gradle` ファイルの *dependencies* セクションに BOM を追加します。

   ```
   ...
   dependencies {
       implementation platform('com.amazonaws:aws-java-sdk-bom:1.12.529')
   
       // Declare individual SDK dependencies without version
       ...
   }
   ```

1. *dependencies* セクションで使用する SDK モジュールを指定します。たとえば、以下には 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 の情報を使用して、正しいバージョンの SDK 依存関係を自動的に解決します。

以下は、 の依存関係を含む完全な`build.gradle`ファイルの例です Amazon S3。

```
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 サービスの依存関係に置き換えます。BOM によって管理されるモジュール (依存関係) AWS SDK for Java は [Maven 中央リポジトリ](https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom/latest)に一覧表示されます。

## 4.6 より前の Gradle バージョンのプロジェクト設定
<a name="project-setup-for-gradle-versions-earlier-than-4-6"></a>

4.6 より前の Gradle バージョンでは、ネイティブ BOM がサポートされていません。プロジェクトの AWS SDK for Java 依存関係を管理するには、Spring の Gradle 用[依存関係管理プラグイン](https://github.com/spring-gradle-plugins/dependency-management-plugin)を使用して SDK の 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"
   ```

1. ファイルの *dependencyManagement* セクションに BOM を追加します。

   ```
   dependencyManagement {
       imports {
           mavenBom 'com.amazonaws:aws-java-sdk-bom:1.12.529'
       }
   }
   ```

1. *dependencies* セクションで使用する SDK モジュールを指定します。たとえば次の例には、 Amazon S3の依存関係が含まれています。

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

Gradle は BOM の情報を使用して、正しいバージョンの SDK 依存関係を自動的に解決します。

以下は、 の依存関係を含む完全な`build.gradle`ファイルの例です Amazon S3。

```
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 サービスの依存関係に置き換えます。BOM によって管理されるモジュール (依存関係) AWS SDK for Java は [Maven 中央リポジトリ](https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom/latest)に一覧表示されます。

BOM を使用した SDK の依存関係の指定の詳細については、[Apache Maven とともに SDK を使用する](setup-project-maven.md)を参照してください。