はじめに
こんにちは。ゴーリスト開発のイイオです。
ゴーリストでは大変にAWSを使っていて、400台以上のEC2インスタンスが蠢いてます。
(常時起動なのはそこまで多くありません)
そんなわけでAWS SDK for Javaもズンドコと使っています。
最近こころみにGradleでJavaプロジェクトを作ってSDKを使ったので
今回は「Gradleを使ってSDKのバージョン・依存関係を管理する手順」を書きたいと思います。
公式ドキュメントはこちら
準備
1. Gradleインストール
MacならHomebrewでイッパツ
brew update && brew install gradle
2. GradleでJavaプロジェクト作成
任意の場所でプロジェクト作るだけ
gradle init
build.gradle設定
1. SDKモジュールの依存関係管理のために Dependency management プラグインを導入
buildscript { repositories { mavenCentral() } dependencies { classpath "io.spring.gradle:dependency-management-plugin:1.0.0.RC2" } } apply plugin: "io.spring.dependency-management"
2. Dependency management で AWS SDK BOM を追加
SDKのバージョンはここで指定できる
dependencyManagement {
imports {
mavenBom 'com.amazonaws:aws-java-sdk-bom:1.10.77'
}
}
Maven Repository: com.amazonaws » aws-java-sdk-bom
3. dependenciesセクションでプロジェクト上で利用するSDKモジュールを指定
dependencies { compile 'com.amazonaws:aws-java-sdk-s3' testCompile group: 'junit', name: 'junit', version: '4.11' }
以上をまとめるとこんな感じに
build.gradle
buildscript { repositories { mavenCentral() } dependencies { classpath "io.spring.gradle:dependency-management-plugin:1.0.0.RC2" } } apply plugin: "io.spring.dependency-management" dependencyManagement { imports { mavenBom 'com.amazonaws:aws-java-sdk-bom:1.10.77' } } apply plugin: 'java' sourceCompatibility = 1.8 targetCompatibility = 1.8 tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } repositories { jcenter() } dependencies { compile 'org.slf4j:slf4j-api:1.7.22' testCompile 'junit:junit:4.12' compile 'com.amazonaws:aws-java-sdk-s3' }
これでOKワーイズンドコズンドコ
あとは
お好きなIDEで開発するのみ
Gradle初心者ですんで何か間違っている部分あれば、ぜひに報告をいただきたいです。