このチュートリアルでは、 Java 開発用のローカルマシンを準備する方法を説明します。これには、 Google Cloudで動作する Java アプリの開発も含まれます。Java と関連ツールをインストールする手順は次のとおりです。
目標
- JDK(Java Development Kit)をインストールする
- ビルド自動化ツールをインストールする
- gcloud CLI をインストールする
- (オプション)IDE またはエディタをインストールする
- (オプション)IDE Google Cloud プラグインをインストールする
- Java 用 Cloud クライアント ライブラリをインストールする
- 認証を設定する。
JDK(Java Development Kit)をインストールする
次の環境変数が設定されていることを確認して、任意の Java ディストリビューションを選択できます。
- JAVA_HOME: JDK インストールのベースを指します。
- PATH:
$JAVA_HOME/binが含まれます。
Eclipse Temurin は、 Google Cloudで使用する推奨の OpenJDK(Java Development Kit)ディストリビューションです。Temurin はオープンソース ライセンスで提供され、Java SE TCK 認定を受けており、本番環境品質のパフォーマンスとセキュリティを確保するためにテストされています。
(推奨)Temurin をインストールする
Temurin のインストール手順は、オペレーティング システムによって異なります。
- バイナリをダウンロードできます。
- Docker コンテナの場合は、公式の「eclipse-temurin」イメージを使用します。
Compute Engine ブートイメージを使用している場合は、次のインストール スクリプトを使用できます。
CentOS/RHEL/Rocky
- CentOS/RHEL/Rocky Linux のメジャー バージョンを特定します。
eval "$(grep VERSION_ID /etc/os-release)" eval "$(grep ^ID= /etc/os-release)" OLD_IFS=$IFS IFS='.' read -ra split_version <<< "$VERSION_ID" IFS=$OLD_IFS MAJOR_VERSION=$split_version
- Adoptium ソース リポジトリ ファイル `/etc/yum.repos.d/adoptium.repo` を作成します。
sudo tee /etc/yum.repos.d/adoptium.repo << EOM [Adoptium] name=Adoptium baseurl=https://packages.adoptium.net/artifactory/rpm/$ID/$MAJOR_VERSION/\$basearch enabled=1 gpgcheck=1 gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public EOM
- パッケージ リストを更新します。
sudo yum update -y
- Temurin をインストールします。
sudo yum install -y temurin-17-jdk
- インストールの確認:
java -version
Debian、Ubuntu
- 公開リポジトリの GPG 鍵をインストールします。Ubuntu 16.4 を使用している場合は、ファイルに保存する前に鍵
gpg --dearmorを使用して渡します。(例:sudo wget ... | gpg --dearmor | sudo tee ...)sudo mkdir -p /etc/apt/keyrings sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc
- Linux ディストリビューションの名前を特定して、ソースリスト ファイル
/etc/apt/sources.list.d/adoptium.list: を作成します。eval "$(grep VERSION_CODENAME /etc/os-release)" sudo tee /etc/apt/sources.list.d/adoptium.list << EOM deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $VERSION_CODENAME main EOM
- パッケージ リストを更新します。
sudo apt update -y
- Temurin をインストールします。
sudo apt install -y temurin-17-jdk
- インストールの確認:
java -version
SLES
- SLES のメジャー バージョンを特定します。
eval "$(grep VERSION_ID /etc/os-release)" OLD_IFS=$IFS IFS='.' read -ra split_version <<< "$VERSION_ID" IFS=$OLD_IFS MAJOR_VERSION=$split_version
- 公開リポジトリの GPG 鍵をインストールします。
sudo mkdir -p /etc/zypp/keyrings sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/zypp/keyrings/adoptium.asc sudo rpm --import /etc/zypp/keyrings/adoptium.asc
- SLES のバージョンを特定して、Adoptium リポジトリを登録します。
sudo zypper ar -f "https://packages.adoptium.net/artifactory/rpm/sles/$MAJOR_VERSION/$(uname -m)" adoptium
- パッケージ リストを更新します。
sudo zypper update -y
- Temurin をインストールします。
sudo zypper install -y temurin-17-jdk
- インストールの確認:
java -version
Windows
Temurin をインストールするには、PowerShell バージョン 3.0 以降を 管理者として次のコマンドで実行します。
- Temurin をダウンロードします。以下の手順の
Invoke-WebRequestコマンドには、PowerShell 3.0 以降が必要です。$JdkVersion = 17 $JdkUrl = "https://api.adoptium.net/v3/binary/latest/$JdkVersion/ga/windows/x64/jdk/hotspot/normal/eclipse?project=jdk" $JdkExtractionPath = "C:\temurin-$JdkVersion-jdk" $JdkDownload = "$JdkExtractionPath.zip" [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls12' Invoke-WebRequest -Uri $JdkUrl -OutFile $JdkDownload Expand-Archive $JdkDownload -DestinationPath $JdkExtractionPath -Force
JAVA_HOME変数とPath変数を設定します:pushd $JdkExtractionPath $JdkPath = (Get-ChildItem).FullName popd [System.Environment]::SetEnvironmentVariable('JAVA_HOME', $JdkPath, 'Machine')- (Optional) Refresh your session's `$env:Path` value. Otherwise, start a
new session:
$MachinePath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine') $UserPath = [System.Environment]::GetEnvironmentVariable('Path', 'User') $env:Path = "$MachinePath;$UserPath" - インストールの確認:
java -version
ビルド自動化ツールをインストールする
Apache Maven、 Gradle、 および SBT は、プラットフォーム間で迅速かつ一貫性のある Java アプリの依存関係を構築するのに役立つパッケージ管理オプションです。
gcloud CLI をインストールする
gcloud CLI
は、のための一連のツールです Google Cloud。これには、コマンドラインから Compute Engine、Cloud Storage、BigQuery、その他のプロダクトやサービスにアクセスするために使用される gcloud と bq が含まれます。これらのツールはインタラクティブに実行することも、自動スクリプトで実行することもできます。
(オプション)IDE またはエディタをインストールする
Java アプリの開発に広く使用されているエディタの一部を以下に示します(順不同)。
- Visual Studio Code
- IntelliJ IDEA または Webstorm (JetBrains)
- Eclipse (Eclipse Foundation)
- Atom( GitHub)
これらのエディタには、構文のハイライト表示、インテリセンス、コード補完から完全な統合デバッグ機能まで、豊富な機能が用意されています(プラグインが必要になる場合もあります)。
(オプション)IDE プラグインをインストールする
エディタ内の便利な機能にアクセスするには、次のプラグインを確認してください。
Java 用 Cloud クライアント ライブラリをインストールする
Java 用 Cloud クライアント ライブラリ を使用して、 Google Cloud Datastore や Cloud Storage などのサービスと統合します。次の例に示すように、BigQuery などの個別の API のパッケージをインストールできます。
Maven を使用している場合は、次のものを pom.xml ファイルに追加します。BOM の詳細については、Google Cloud Platform ライブラリ BOM をご覧ください。
Gradle を使用している場合は、次のものを依存関係に追加します。
sbt を使用している場合は、 次のものを依存関係に追加します。
Visual Studio Code または IntelliJ を使用している場合は、次の IDE プラグインでプロジェクトにクライアント ライブラリを 追加できます。
プラグインでは、サービス アカウントのキー管理などの追加機能も提供されます。詳細は各プラグインのドキュメントをご覧ください。
認証を設定する
クライアント ライブラリを実行するには、まず認証を設定する必要があります。
ユーザーアカウントのローカル認証情報を作成します。
gcloud auth application-default login
認証エラーが返され、外部 ID プロバイダ (IdP)を使用している場合は、 フェデレーション ID で gcloud CLI にログインしていることを確認します。
詳細については、 クライアント ライブラリを使用して認証するをご覧ください。
クライアント ライブラリの使用
クライアント ライブラリのエンドポイントを構成する
リージョン エンドポイントをサポートする API を使用する場合は、エンドポイントを使用して、リクエストを送信するサーバーを構成します。たとえば、Google.Cloud.Dataproc.V1 API を使用して、クライアント エンドポイントを構成できます。Dataproc のリージョン エンドポイントの詳細については、こちらをご覧ください。次の例では、MY-PROJECT は実際のプロジェクト名に、us-central1 は構成に適したリージョンに置き換えてください。
ClusterControllerSettings settings =
ClusterControllerSettings.newBuilder()
.setEndpoint("us-central1-dataproc.googleapis.com:443")
.build();
try (ClusterControllerClient clusterControllerClient = ClusterControllerClient.create(settings)) {
String projectId = "MY-PROJECT";
String region = "us-central1";
Cluster cluster = Cluster.newBuilder().build();
}次のステップ
(オプション)App Engine 用の Maven プラグインまたは Gradle プラグインを使用する
App Engine スタンダード環境またはフレキシブル環境で開発している場合は、Apache Maven と Gradle ビルドツールの両方に対し、アプリケーションを直接開発、テスト、およびデプロイするための便利な機能を提供するプラグインを使用できます。
App Engine スタンダード環境の場合
App Engine スタンダード環境用の Maven App Engine Plugin または Gradle プラグイン を使用します。
App Engine フレキシブル環境の場合
App Engine フレキシブル環境用の Maven App Engine プラグイン または Gradle プラグイン を使用します。
その他のリソース
- プロダクトの ドキュメント Google Cloud を参照する。
- GitHub から Java サンプル レポジトリのクローンを作成する。