Endpoints Framework Gradle プラグイン

Endpoints Framework Gradle プラグインは、App Engine 用 Endpoints Framework プロジェクトをビルドして接続するためのタスクと設定を追加します。このプラグインは、サーバー側とクライアント側をサポートします。サーバー側のプラグインは、アノテーション付きの Endpoints Framework Java プロジェクトとクライアント ライブラリからディスカバリ ドキュメントと OpenAPI 仕様を生成します。クライアント側プラグインは、ディスカバリ ドキュメントが利用可能であるときにクライアント ライブラリを生成します。

プラグインの依存関係

Endpoints Framework Gradle プラグインの依存関係を追加するには、次に示すスニペットを build.gradle で使用します。次に示すコードは、依存関係を Maven Central から取得します。

classpath 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.2'

サーバー側プラグイン

サーバー側の Endpoints Framework Gradle プラグインを追加するには、次に示すスニペットを build.gradle で使用します。

apply plugin: 'com.google.cloud.tools.endpoints-framework-server'

build.gradleendpointsServer クロージャを使用してサーバー側の設定を行います。

endpointsServer {
  // Endpoints Framework Plugin server-side configuration
  hostname = "${projectId}.appspot.com"
}

サーバー側のタスクとプロパティ

次に示すタスクは、サーバー側に対してのみ公開されます。

endpointsClientLibs

このタスクは、サービスクラスに基づいてエンドポイント クライアント ライブラリを生成します。

次のプロパティを使用できます。

プロパティ 説明
serviceClasses サービスクラス(エンドポイント クラス)のリスト。これは `web.xml` から推定できます。
clientLibDir 生成されるクライアント ライブラリの出力ライブラリ。
hostname 生成されるクライアント ライブラリのルート URL 設定用。たとえば、「hostname = myapp.appspot.com」を使用するとデフォルトのルート URL は「https://myapp.appspot.com/_ah/api」となります。

endpointsDiscoveryDocs

このタスクは、サービスクラスに基づいてディスカバリ ドキュメントを生成します。

次のプロパティを使用できます。

プロパティ 説明
serviceClasses サービスクラス(エンドポイント クラス)のリスト。これは `web.xml` から推定できます。
hostname 生成されるディスカバリ ドキュメントのルート URL 設定用。たとえば、`hostname = myapp.appspot.com` を使用するとデフォルトのルート URL は `https://myapp.appspot.com/_ah/api` となります。

endpointsOpenApiDocs

このタスクは、サービスクラスに基づいて OpenAPI ドキュメントを生成します。

次のプロパティを使用できます。

プロパティ 説明
serviceClasses サービスクラス(エンドポイント クラス)のリスト。これは `web.xml` から推定できます。
hostname 生成される OpenAPI ドキュメントのルート URL 設定用。たとえば、`hostname = myapp.appspot.com` を使用すると `host` URL は `https://myapp.appspot.com`、`basePath` は `/_ah/api` となります。

クライアント側プラグイン

クライアント側の Endpoints Framework Gradle プラグインを追加するには、次に示すコードを build.gradle で使用します。

apply plugin: 'com.google.cloud.tools.endpoints-framework-client'

build.gradleendpointsClient クロージャを使用してサーバー側の設定を行います。

endpointsClient {
  // client-side properties
}

クライアント側のプロパティ

クライアント側プラグインは、サーバー側プラグインとは異なりタスクを公開しません。 クライアント側プラグインを適用すると、次に示す設定プロパティに従ってソースが生成されます。

プロパティ 説明
discoveryDocs ソースの生成に使用されるディスカバリ ドキュメントのリスト。

次のステップ

  • GitHub でプラグインのコードを調べて問題を報告します。