App Engine Gradle プラグインのタスクとプロパティ

App Engine プラグインをプロジェクトに追加すると、App Engine スタンダード環境のアプリケーションで以下の App Engine 固有の Gradle タスクを使用できます。

タスク 説明
tasks インストールされているタスクのヘルプ情報を表示します。
appengineCloudSdkLogin アカウントのグローバル Cloud SDK の状態を設定します。
appengineDeploy アプリケーションをステージングし、App Engine にデプロイします。
appengineDeployAll アプリケーションとそのすべての有効な yaml 構成ファイルを同時にステージングし、App Engine にデプロイします。
appengineDeployCron cron.yaml 構成ファイルをステージングし、App Engine にデプロイします。
appengineDeployDispatch dispatch.yaml 構成ファイルをステージングし、App Engine にデプロイします。
appengineDeployDos dos.yaml 構成ファイルをステージングし、App Engine にデプロイします。
appengineDeployIndex index.yaml 構成ファイルをステージングし、App Engine にデプロイします。
appengineDeployQueue queue.yaml 構成ファイルをステージングし、App Engine にデプロイします。
appengineRun App Engine 開発用サーバーを実行します。サーバーの稼働中は、appengine-web.xml が変更されていないかどうか継続的に確認します。変更されている場合、サーバーがアプリケーションを再度読み込みます。appengine-web.xml が変更されても、アプリケーションを停止して再起動する必要はありません。
appengineStage デプロイ用のアプリケーション ディレクトリを生成します。
appengineStart App Engine 開発用サーバーの実行を非同期で開始して、コマンドラインに戻ります。このゴールが実行された場合の動作は run ゴールとほぼ同じですが、Gradle がタスクの処理を続けてサーバーが稼働中になると終了する点が異なります。
appengineStop 実行中の App Engine 開発用ウェブサーバーを停止します。
explodeWar WAR ファイルを展開してビルド ディレクトリに出力します。

すべてのタスクのリストを表示するには、次のコマンドを実行します。

gradle tasks

Gradle のセットアップと使用方法の詳細については、App Engine Gradle の使用をご覧ください。

タスク プロパティ

gradle.build ファイルには、ビルドを記述する一連のルールが含まれます。これは Groovy 言語に基づき、ビルドを記述するためのドメイン固有の言語で書かれます。

各タスクには、使用可能な下記のプロパティが関連付けられています。このようなプロパティは、構成用クロージャ、タスク、プロパティを使用して gradle.build ファイルで指定できます。

下記の例で、

  • プラグインの構成用クロージャは appengine です。
  • タスクは run です。
  • プロパティ port8080 に設定されています。
appengine {  // App Engine tasks configuration
  run {      // local (dev_appserver) configuration (standard environments only)
    port = 8080                 // default
  }

  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}

指定するプロパティが少ない場合には、次のように 1 行で設定できます。

  appengine.run.port = 8888

各タスクで使用できるプロパティについては、下記の各セクションをご覧ください。

appengineStage

task(stage)

デプロイ用のアプリケーション ディレクトリを生成します。appengineStage は、appengineDeploy タスクで使用されます。

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

プロパティ説明
compileEncoding JSP のコンパイルに使用する文字エンコード。App Engine スタンダード環境で実行されるアプリケーションにのみ適用されます。
deleteJsps コンパイル後に JSP ソースファイルを削除します。App Engine スタンダード環境で実行されるアプリケーションにのみ適用されます。
disableJarJsps JSP から生成されたクラスの追加を無効にします。App Engine スタンダード環境で実行されるアプリケーションにのみ適用されます。
disableUpdateCheck Cloud SDK の更新確認を無効にします。
enableJarClasses WEB-INF/classes content を Jar で圧縮します。App Engine スタンダード環境で実行されるアプリケーションにのみ適用されます。
useMtimeFileWatcher ソースコードの変更を検出するために mtime ポーリングを使用します。分散ファイル システムを使用してリモートマシンからコードを変更する場合に便利です。
enableJarSplitting 10 MB より大きい JAR ファイルをより小さいフラグメントに分割します。App Engine スタンダード環境にのみ適用されます。
enableQuickstart Eclipse Jetty クイックスタートを使用してサーブレット アノテーションを処理します。App Engine スタンダード環境にのみ適用されます。
jarSplittingExcludes SUFFIXES のカンマ区切りリストと一致するファイルをすべての JAR ファイルから除外します。App Engine スタンダード環境で実行されるアプリケーションにのみ適用されます。
sourceDirectory 必須。コンパイルしたウェブ アプリケーション ファイルまたは分割した WAR の場所。これはステージングのソースとして使用されます。App Engine スタンダード環境にのみ適用されます。デフォルトは build/exploded-${gradle-module-name} です。
stagingDirectory 必須。アプリケーションのステージング先のディレクトリ。デフォルトは build/staged-app です。

appengineRun

task(run)

App Engine 開発用ウェブサーバーを実行します。サーバーの稼働中は、appengine-web.xml が変更されていないかどうか継続的に確認します。変更されると、サーバーがアプリケーションを再度読み込みます。appengine-web.xml が変更されても、アプリケーションを停止して再起動する必要はありません。

使用できるプロパティは次のとおりです。一部のプロパティは、ローカル開発用サーバーのコマンドライン フラグと同じです。

プロパティ 説明
environment ローカル開発用サーバーに送信するための、環境変数のマップ。例: [key1: "value1", key2: "value2"]
jvmFlags アプリケーションのインスタンスを起動する際に java コマンドに渡す追加の引数。複数回指定できます。例: -Xmx1024m -Xms256m
host アプリケーション サービスをバインドするホスト名。デフォルトは localhost です。
port アプリケーション サービスをバインドする最低位のポート。デフォルトは 8080 です。
serverVersion 起動するサーバーのバージョン。オプションは "1" と "2-alpha" です。デフォルトは "1" です。
services 必須。WEB-INF/web.xml が存在するディレクトリへのパス。デフォルトは build/exploded-app です。
startSuccessTimeout 開発用アプリケーション サーバーをバックグラウンドで起動する前に待機する時間の長さ(秒)(appengineStart を使用するとき)。

appengineDeploy

task(deploy)

アプリケーションをステージングし、App Engine にデプロイします。

プロパティ 説明
appEngineDirectory .yaml 構成ファイル(cron、index など)の場所。ここから構成固有のデプロイ(appengineDeployCron など)が行われます。標準アプリケーションの場合は、.xml 構成ファイルがステージング時に .yaml に変換されて build/staged-app/WEB-INF/appengine-generated に配置されます。
bucket デプロイに関連付けられたファイルのステージングで使われる Google Cloud Storage バケット。この引数を指定しない場合、アプリケーションのデフォルト バケットが使用されます。
imageUrl 特定の Docker イメージを使用してデプロイします。Docker URL は、いずれかの有効な Google Container Registry ホスト名でなければなりません。
projectId この呼び出しに使用する Google Cloud Platform プロジェクト ID。projectId を指定する必要があります。GCLOUD_CONFIG を設定して、gcloud config 状態に設定されたプロジェクトを使用することもできます。
promote すべてのトラフィックを受信するように、デプロイ済みバージョンを昇格させます。デフォルトは True です。
server 接続先の App Engine サーバー。通常、この値を変更する必要はありません。
stopPreviousVersion すべてのトラフィックを受信する新しいバージョンをデプロイするときに、現在実行中のバージョンを停止します。
version このデプロイで作成または置換されるアプリケーションのバージョン。バージョンを指定しない場合は自動生成されます。

グローバル プロパティ

プロパティ説明
tools.cloudSdkHome Cloud SDK の場所の構成に使用するオプションのプロパティ。このプロパティを指定しなかった場合、プラグインは自動的に Cloud SDK をダウンロードします。
tools.cloudSdkVersion Cloud SDK のバージョンを指定するためのオプションのパラメータ。
このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Java 8 の App Engine スタンダード環境