クライアント ライブラリは、API の言語固有のインターフェースです。このドキュメントでは、Bazel のランチャーである Bazelisk を使用して、Routes API for Automotive のクライアント ライブラリをさまざまなプログラミング言語で生成する方法について説明します。Bazelisk では、正しいバージョンの Bazel を使用してビルドコマンドを実行できます。
ライブラリの生成に必要なコードは、非公開の Gerrit リポジトリにホストされています。クライアント ライブラリの仕組みについては、クライアント ライブラリの説明をご覧ください。
前提条件
ソフトウェアの要件
以下をインストールします。
権限要件
- リポジトリへのアクセスは、会社の代表者によって管理されている特定の <partner>@google.com グループのメンバーに与えられます。このグループへの追加については、貴社の担当者または Google ビジネス パートナーにお問い合わせください。
ステップ 1: Gerrit にアクセスする
Gerrit にアクセスするには:- 前提条件セクションに記載されているリポジトリ権限の要件を完了していることを確認します。
- Google アカウントの作成の手順に沿って、会社のメールアドレスで Google アカウントを作成します。
- Google アカウントを作成する場合は、Google アカウントのログインページにアクセスする前に、gmail.com や他の Google ドメイン サービス アカウントにログインしていないことを確認してください。プロファイルをクリーンにするには、ブラウザを閉じて再起動し、シークレット(プライベート)ブラウジング ウィンドウを開きます。
- 他のユーザーのアクセス権をリクエストする場合は、アクセス権を必要とするユーザーごとにアカウントを作成します。次に、新しい Google アカウントのリストを Google ビジネス パートナーに送信します。 ビジネス パートナーが、これらのメールアドレスを適切なアクセス グループに追加します。
- 作成した Google アカウントを使用して、https://partner-code.googlesource.com にアクセスします。Gerrit ホストにアクセスすると、ユーザーが作成されて自動的にログインします。
- https://partner-code.googlesource.com で、[Generate Password] をクリックします。画面の指示に沿って Google アカウントを選択し、googlesource.com にアクセスを許可して、画面上のその他の指示に沿って操作します。
- スクリプトが表示されたら、そのスクリプトをコピーしてターミナルに貼り付けます。
ステップ 2: リポジトリのクローンを作成する
このステップでは、googleapis
リポジトリと routes-auto-early-access
リポジトリのクローンを作成します。
routes-auto-early-access
リポジトリのクローンを作成します。git clone https://partner-code.googlesource.com/routes-auto-early-access
- 一般公開の Google
googleapis
リポジトリのクローンを作成します。git clone https://github.com/googleapis/googleapis.git
ステップ 3: リポジトリを統合する
このステップでは、routes-auto-early-access/google/maps/routing/v2
サブディレクトリを googleapis/google/maps/routing/v2
に移動します。
- リポジトリのクローンを作成したら、現在の作業ディレクトリ(
pwd
)にroutes-auto-early-access
とgoogleapis
の両方のサブディレクトリが含まれていることを確認します。. ├── routes-auto-early-access └── googleapis
- ターゲットの場所に
routing/v2
ディレクトリを作成し、routing/v2
をgoogleapis/google/maps/routing/v2
にコピーします。mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
routing/v2
ディレクトリが googleapis/google/maps/routing/v2
ディレクトリに正常にマージされたことを確認するには、googleapis/google/maps/routing/v2
に移動します。フォルダには、proto ファイル、BUILD.bazel
ファイル、ビルドに必要なその他のファイルが含まれています。
ステップ 4: Bazelisk を使用してクライアント ライブラリをビルドする
特定の言語のクライアント ライブラリをビルドするには、BUILD.bazel
ファイル(googleapis/google/maps/routing/v2/BUILD.bazel
)でその言語のビルド ターゲットを指定し、そのターゲットをビルドします。ターゲット name
は、<LANGUAGE>_gapic_assembly_pkg
オブジェクト内にあります。詳細については、Bazel のドキュメントの 1 つのターゲットをビルドするをご覧ください。
たとえば、Java クライアント ライブラリをビルドする手順は次のとおりです。
googleapis
ディレクトリに移動します。cd googleapis
- 次のコマンドを実行します。
bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
このコマンドにより、
googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
に Java クライアント ライブラリが生成されます。
次の表に、使用可能な各言語のビルドコマンドを示します。
言語 | Bazelisk ビルドコマンド |
---|---|
Java | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-java
|
Go | bazelisk build google/maps/routing/v2:gapi-cloud-maps-routing-v2-go
|
PHP | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-php
|
Ruby | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-ruby
|
C# | bazelisk build google/maps/routing/v2:google-cloud-maps-routing-v2-csharp
|
ノード | bazelisk build google/maps/routing/v2:maps-routing-v2-nodejs
|
新しいリリースがある場合にアップデートを組み込む
API の新しいリリースがある場合は、クライアント ライブラリを再ビルドする必要があります。前のセクションの手順に沿ってリポジトリのクローンを作成している場合は、新しいリリースに対して次の操作を行います。
- 両方のリポジトリを含む現在の作業ディレクトリに移動します。
. ├── routes-auto-early-access └── googleapis
googleapis/google/maps
内のrouting/v2
の以前のインスタンス
を削除します。rm -rf googleapis/google/maps/routing/v2
routes-auto-early-access
リポジトリとgoogleapis
リポジトリの両方に移動し、git pull
を実行して最新の更新を取得します。- 前と同様に、
routing/v2
をgoogleapis/google/maps/routing/v2
にコピーします。mkdir -p "googleapis/google/maps/routing/v2" && cp -R "routes-auto-early-access/google/maps/routing/v2" "googleapis/google/maps/routing"
routing/v2
リポジトリがgoogleapis/google/maps/routing/v2
ディレクトリに正常にマージされたことを確認するには、googleapis/google/maps/routing/v2
に移動します。フォルダには、proto ファイル、BUILD.bazel
ファイル、Bazel ビルドに必要なその他のファイルが含まれています。 - 前のセクションのステップ 4: Bazelisk を使用してクライアント ライブラリをビルドするで一覧表示した Bazelisk ビルドコマンドを実行します。
Java クライアント ライブラリの Javadocs の生成
クライアント ライブラリを使用すると、その言語に固有のクラスとメソッドを使用して Routes API for Automotive を呼び出すことができます。残念ながら、出力にはクライアント ライブラリの Javadoc ドキュメントは含まれていません。このセクションでは、Java クライアント ライブラリの Javadoc を生成する方法について説明します。
前提条件
Javadoc をビルドするには:
互換性のあるバージョンの Gradle(8.0 以降)と JDK(17 以下)がインストールされていることを確認します。ターミナルで
./gradlew --version
とjava -version
を実行すると、インストールされているバージョンを確認できます。Java クライアント ライブラリは
tar.gz
ファイル(googleapis/bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz
)にビルドされているため、このファイルを抽出する必要があります。現在のディレクトリが
googleapis
ディレクトリであると仮定して、次のコマンドを実行します。/PATH/TO/PARENT/DIRECTORY
は、抽出したライブラリのパスに置き換えてください。mkdir -p /PATH/TO/PARENT/DIRECTORY && tar -xzpf bazel-bin/google/maps/routing/v2/google-cloud-maps-routing-v2-java.tar.gz -C /PATH/TO/PARENT/DIRECTORY
親ディレクトリに移動します。
cd /PATH/TO/PARENT/DIRECTORY
google-cloud-maps-routing-v2-java
ディレクトリから、次の各ディレクトリにあるbuild.gradle
ファイルを開きます。gapic-google-cloud-maps-routing-v2-java/build.gradle
grpc-google-cloud-maps-routing-v2-java/build.gradle
proto-google-cloud-maps-routing-v2-java/build.gradle
それぞれに次のタスクが含まれていることを確認します。バグにより、既存の 2 つの類似したタスクとアーティファクトを次のコードに置き換えます。
task javadocJar(type: Jar, dependsOn: javadoc) { archiveClassifier.set('javadoc') from javadoc.destinationDir } task sourcesJar(type: Jar) { archiveClassifier.set('sources') from sourceSets.main.allSource } artifacts { archives javadocJar }
Gradle 8.0 以降を使用していることを確認します(
./gradlew --version
)。バージョンが 7 の場合は、次の操作を行います。google-cloud-maps-routing-v2-java
ディレクトリからgradlew
ファイルとgradlew.bat
ファイルを削除します。次に、gradle wrapper --gradle-version=8.0
を実行して 8.0 に切り替えます。google-cloud-maps-routing-v2-java
ディレクトリから、Gradle を使用して Javadocs をビルドします。./gradlew build
生成された Javadoc は、以下のディレクトリに格納されます。
google-cloud-maps-routing-v2-java/gapic-google-cloud-maps-routing-v2-java/build/docs/javadoc
google-cloud-maps-routing-v2-java/grpc-google-cloud-maps-routing-v2-java/build/docs/javadoc
google-cloud-maps-routing-v2-java/proto-google-cloud-maps-routing-v2-java/build/docs/javadoc
ウェブブラウザを使用して、各ディレクトリの
overview-tree.html
ファイルを開きます。