Java 開発環境の設定

このチュートリアルでは、Google Cloud で動作する Java アプリの開発など、Java 開発用のローカルマシンを準備する方法を説明します。このチュートリアルに従って、Java および関連ツールをインストールしてください。

ヒント: すぐに始める場合は、Cloud Shell Editor が Kubernetes と Cloud Run アプリケーションの開発サイクル全体をサポートします。Cloud Shell Editor は Eclipse Theia IDE プラットフォームに基づいており、Google Cloud CLI と Cloud Code のツールが付属しています。

目標

  • JDK(Java Development Kit)をインストールする
  • ビルド自動化ツールをインストールする
  • (オプション)IDE またはエディタをインストールする
  • (オプション)IDE Google Cloud プラグインをインストールする
  • gcloud CLI をインストールする
  • Java 用 Cloud クライアント ライブラリをインストールする

JDK(Java Development Kit)をインストールする

OpenJDK 11 または OpenJDK 8 ディストリビューションをインストールする使用可能なディストリビューションの一部を以下に示します。

  • SdkMan 多くの OpenJDK、Maven、Gradle など、複数の SDK を管理するためのツールです。
  • Eclipse Terumin Eclipse Terumin プロジェクトによってビルドされた OpenJDK ビルド。
  • Zulu Community ビルド OpenJDK の Zulu Community ビルド。
  • jdk.java.net Oracle の Java Development Kit ビルド。

次の環境変数が設定されていることを確認します。

  • JAVA_HOME: JDK インストールのベースを指します。
  • PATH: $JAVA_HOME/bin が含まれます。

ビルド自動化ツールをインストールする

Apache MavenGradleSBTは、プラットフォーム間で迅速かつ一貫性のある Java アプリの依存関係を構築するのに役立つパッケージ管理オプションです。

gcloud CLI をインストールする

gcloud CLI は、Google Cloud 用ツールセットです。このセットには gcloudgsutilbq が含まれており、Compute Engine、Cloud Storage、BigQuery などのプロダクトやサービスにコマンドラインからアクセスできます。これらのツールはインタラクティブに実行することも、自動スクリプトで実行することもできます。

(オプション)IDE またはエディタをインストールする

Java アプリの開発に広く使用されているエディタの一部を以下に示します(順不同)。

これらのエディタには、構文のハイライト表示、インテリセンス、コード補完から完全な統合デバッグ機能まで、豊富な機能が用意されています(プラグインが必要になる場合もあります)。

(オプション)IDE プラグインをインストールする

エディタ内の便利な機能にアクセスするには、次のプラグインを確認してください。

Java 用 Google Cloud クライアント ライブラリを使用する

Java 用 Google Cloud クライアント ライブラリを使用して、Datastore や Cloud Storage などの Google Cloud サービスと統合します。次の例に示すように、BigQuery などの個別の API のパッケージをインストールできます。

クライアント ライブラリのインストール

Maven を使用している場合は、以下を pom.xml ファイルに追加します。BOM の詳細については、Google Cloud Platform ライブラリ BOM をご覧ください。

<!--  Using libraries-bom to manage versions.
See https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.20.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-bigquery</artifactId>
  </dependency>
</dependencies>

Gradle を使用している場合は、以下を依存関係に追加します。

implementation platform('com.google.cloud:libraries-bom:26.37.0')

implementation 'com.google.cloud:google-cloud-bigquery'

sbt を使用している場合は、以下を依存関係に追加します。

libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "2.38.2"

Visual Studio Code、IntelliJ または Eclipse を使用している場合は、次の IDE プラグインでプロジェクトにクライアント ライブラリを追加できます。

プラグインでは、サービス アカウントのキー管理などの追加機能も提供されます。詳細は各プラグインのドキュメントをご覧ください。

認証を設定する

クライアント ライブラリを実行するには、まず認証を設定する必要があります。

クライアント ライブラリの使用

// Imports the Google Cloud client library
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import com.google.cloud.bigquery.DatasetInfo;

public class QuickstartSample {
  public static void main(String... args) throws Exception {
    // Instantiate a client. If you don't specify credentials when constructing a client, the
    // client library will look for credentials in the environment, such as the
    // GOOGLE_APPLICATION_CREDENTIALS environment variable.
    BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

    // The name for the new dataset
    String datasetName = "my_new_dataset";

    // Prepares a new dataset
    Dataset dataset = null;
    DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build();

    // Creates the dataset
    dataset = bigquery.create(datasetInfo);

    System.out.printf("Dataset %s created.%n", dataset.getDatasetId().getDataset());
  }
}

次のステップ

(オプション)App Engine 用の Maven プラグインまたは Gradle プラグインを使用する

App Engine スタンダード環境またはフレキシブル環境で開発している場合は、Apache Maven と Gradle ビルドツールの両方に対し、アプリケーションを直接開発、テスト、およびデプロイするための便利な機能を提供するプラグインを使用できます。

App Engine スタンダード環境の場合

App Engine スタンダード環境用の Maven App Engine プラグインまたは Gradle プラグインを使用します。

App Engine フレキシブル環境の場合

App Engine フレキシブル環境用の Maven App Engine プラグインまたは Gradle プラグインを使用します。

その他のリソース