Java リリースノート

以下のリリースノートに加えて、既知の問題を公開バグトラッカーで追跡することもできます。

2018 年 2 月 27 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.63 に更新されました。

2018 年 2 月 7 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.62 に更新されました。
  • デプロイ時に Java 8 Servlet 3.1 のクイックスタート処理が失敗していた Cloud SDK の問題を修正しました。

2018 年 1 月 22 日

Java ランタイムに関する注意事項

  • Java SDK バージョン 1.9.61 のパッチが公開されました。以前にこのバージョンをインストールしていた場合は、SDK をダウンロードして再インストールしてください。

2018 年 1 月 18 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.61 に更新されました。

2018 年 1 月 10 日

  • App Engine が northamerica-northeast1 リージョン(カナダのモントリオール)で利用できるようになりました。

2017 年 12 月 20 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.60 に更新されました。
  • Java 7 アプリケーションのデプロイ時またはローカル実行時に非推奨警告を追加しました。
  • appcfg のフラグ use_google_application_default_credentials を使用したときに Google Compute Engine VM で正しく動作しなかったバグを修正しました。
  • appcfg コマンドに enable_new_staging_defaults という新しいフラグを追加しました。これは、Java アプリケーションのデプロイフラグでより適切なデフォルト値を指定できるようにして、将来の Cloud SDK 統合に備えるためのフラグです。
  • ランタイムが Java 8 の場合に、ローカル開発サーバーでデフォルトの文字エンコーディングを UTF-8 に変更しました。また、appengine.file.encoding システム プロパティを使用して、文字エンコーディングを明示的に設定できるようになりました。これらの変更によって、本番環境で起こることを模倣できます。
  • Windows 上で実行されている開発サーバーのフィルタが一部のサーブレット URL を解析できないという問題を修正しました。

2017 年 12 月 14 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.59 に更新されました。
  • url-stream-handler 構成パラメータをデフォルトで native に設定するように、ローカル開発サーバーを更新しました。この変更は、本番環境での Java 8 ランタイムの動作を反映しています。url-stream-handler の詳細については、appengine-web.xml リファレンスをご覧ください。
  • ローカル開発サーバーで Java 8 ランタイムと Endpoints Framework Gradle Plugin を使用している場合に発生していた NoClassDefFoundError エラーを修正しました。
  • コロン文字が含まれているサーブレット URL での問題を解決するように、ローカル開発サーバーのバグを修正しました。

2017 年 10 月 31 日

  • App Engine が asia-south1 リージョン(インドのムンバイ)で利用できるようになりました。

2017 年 10 月 11 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.58 に更新されました。
  • App Engine フレキシブル環境でのアノテーションの Jetty クイックスタート モジュールを修正しました。
  • 特定の文字によって URL 解析で問題が発生していた、ローカル開発サーバーのバグを修正しました。
  • JDK 9 を使用している場合は、Jetty 9 JSP コンパイラで 1.8 ターゲットを使用します。

2017 年 9 月 25 日

Java ランタイムに関する注意事項

  • Java 8 ランタイムが一般提供されるようになりました
  • Java SDK がバージョン 1.9.57 に更新されました。
  • ローカル開発サーバーで、パスでの -Xbootclasspath/p および google_sql.jar がサポートされなくなりました。
  • Java 8 ランタイムで、module-info.class が含まれている JDK9 JAR がサポートされなくなりました。
  • Cloud Endpoints v1 が Java 8 ランタイムでサポートされなくなりました。
  • Cloud Endpoints v2 を Java 8 ランタイムで使用している場合に、ローカル開発サーバーで NoClassDefFoundError 例外が発生していた問題を修正しました。

2017 年 9 月 18 日

Java ランタイムに関する注意事項

  • com.google.cloud.tools:appengine-gradle-plugin のリリース 1.3.3
  • ローカル開発サーバーはログを dev_appserver.out に出力するようになりました。(#156
  • クリーンでない再ビルドで datastore-indexes-auto.xml が削除されなくなりました。(#165
  • explodeWar タスクで copy ではなく sync を使用するように切り替えました。(#162

2017 年 9 月 13 日

2017 年 9 月 11 日

Java ランタイムに関する注意事項

  • Java SDK がバージョン 1.9.56 に更新されました。

  • App Engine スタンダード環境の API と互換性のあるフレキシブル ランタイム(compat ランタイム)では、この SDK バージョンで、subnetwork_namesession_affinity、および更新された実行ヘルスチェックと準備ヘルスチェックのサポートを追加するために、appengine-web.xml ファイルの構成が更新されています。

  • Google App Engine SDK で、環境変数 GAE_RUNTIMEjava 7 または java 8)および GAE_ENV(standard)のサポートが追加されました。

2017 年 9 月 5 日

  • App Engine が southamerica-east1 リージョン(ブラジルのサンパウロ)で利用できるようになりました。

2017 年 8 月 1 日

  • App Engine が europe-west3 リージョン(ドイツのフランクフルト)で利用できるようになりました。

2017 年 7 月 18 日

  • App Engine が australia-southeast1 リージョン(オーストラリアのシドニー)で利用できるようになりました。

2017 年 6 月 28 日

新機能

Java 8 ランタイムの既知の制限事項

  • /tmp ディレクトリは書き込み可能です。/tmp 内のファイルは、インスタンスに割り当てられているメモリを消費します。
  • Async Servlet 3.1 はサポートされていません。
  • WebSocket はサポートされていません。
  • Jetty 9 の構成は変更できません。
  • App Engine API は、ウェブ リクエストを処理するスレッド、または ThreadManager を使用して作成されたスレッドからのみ呼び出すことができます。
  • 構成には WEB-INF/appengine-web.xml を使用する必要があり、app.yaml は現時点ではサポートされていません。
  • デプロイには、Maven、Gradle、または IDE のプラグインを使用する必要があります。
  • ExecutorService pool = Executors.newCachedThreadPool(ThreadManager.currentRequestThreadFactory()) などを使用してスレッドプールを作成した場合は、現在のリクエストが終了する前に pool.shutdown() を使用して明示的にシャットダウンする必要があります。
  • 以前は、誤って com.google.appengine.repackaged.org.joda.Instant のようなベンダークラスを参照しても、org.joda.Instant を参照できました。vendoring スキームが変更されたため、そのようなコードは動作しなくなりました。
  • ネイティブ ネットワーク API(HttpURLConnection など)を課金アプリケーションに対して有効化できます。ただし、無料のアプリケーションで使用すると例外(java.net.SocketTimeoutException または java.io.IOException)が返されます。無料のアプリケーションは *.googleapis.com および accounts.google.com にアクセスでき、URL 取得サービスを使用するように構成することもできます。
  • executor では google-cloud-java API をラップする必要があります。Pub/Sub パブリッシャーが Executor 経由で送信されない場合にハングするをご覧ください。
  • Cloud Endpoints は v1 から v2 に移行する必要があります。
  • Channels API および XMPP API はサポートされていません。
  • appengine-labs-api.jar API はサポートされていないため、Java 用 Appstats はサポートされません。
  • Java 7 ランタイムの場合と同様に、Java 8 ランタイムのデフォルトでは、URL 取得トランスポートではなく、ネイティブ Java HTTP(S) トランスポートが使用されます。詳細については、url-stream-handler をご覧ください。

2017 年 6 月 15 日

  • Java SDK がバージョン 1.9.54 に更新されました。

2017 年 6 月 6 日

2017 年 5 月 9 日

  • App Engine が us-east4 リージョン(ノースバージニア州)で利用できるようになりました。
  • Java SDK がバージョン 1.9.53 に更新されました。
  • JSP タグライブラリの使用量が Java 8 SpringBoot アプリケーションで機能しなかった Java SDK の問題を修正しました。

2017 年 5 月 8 日

  • com.google.cloud.tools:appengine-(gradle/maven)-plugin のリリース 1.3.1
  • 開発サーバー上でローカルに実行すると、appengine-web.xml 構成ファイルから環境変数が読み込まれ、インクルードされるようになりました。
  • Maven/Gradle の構成ファイルを使用して追加の環境変数をインクルードするための environment パラメータを公開しました。

2017 年 5 月 2 日

  • com.google.cloud.tools.appengine-(gradle/maven)-plugin のリリース 1.3.0
  • デフォルトの開発サーバーは Dev App Server v1(Java モジュールのみ)
  • 構成デプロイのための新しい Gradle タスク: appengineDeployCronappengineDeployDispatchappengineDeployDosappengineDeployIndexappengineDeployQueue
  • 構成デプロイのための新しい Maven ゴール: appengine:deployCronappengine:deployDispatchappengine:deployDosappengine:deployIndexappengine:deployQueue
  • Maven/Gradle によるフレキシブル アプリのステージングでは、app.yaml のみがビルド / ターゲット ディレクトリにコピーされます。構成ファイルのデプロイには src/main/appengine を使用します。
  • Gradle の exploded アプリのデフォルト ディレクトリが build/exploded-app から build/exploded-<module-name> に変更されました。

2017 年 4 月 19 日

  • Java SDK がバージョン 1.9.52 に更新されました。
  • Java 8 スタンダード環境のアルファ版ランタイムのサポートを改善しました。
  • Java 8 アルファ版スタンダード環境のランタイムで Jetty 9.3.18 にアップグレードしました。
  • Java 8 SpringBoot アプリケーションのサポートを改善するために、最新の Jetty 機能を使用するように quickstart-web.xml の処理を更新しました。
  • 同じ名前で終わるディレクトリ名に置かれている複数のサービスのローカル実行を修正しました。
  • SpringBoot アプリケーションの起動時に発生していた SDK エラーを修正しました。

2017 年 3 月 29 日

2017 年 3 月 21 日

  • com.google.cloud.tools:appengine-gradle-plugin を 1.1.1 に更新しました。
  • マルチ モジュールの Gradle プロジェクトでフレキシブル環境のデプロイが失敗していた問題 108 を修正しました。

2017 年 3 月 6 日

  • com.google.cloud.tools:appengine-maven-plugin を 1.2.1 に更新しました。
  • カスタム デプロイ可能なパラメータが余分なディレクトリに誤って追加されていた問題 144 を修正しました。

2017 年 3 月 1 日

  • Java SDK がバージョン 1.9.50 に更新されました。

  • ローカル開発サーバーで複数のサービスをテストするためのサポートが追加されました。

  • Java 7 ランタイムを使用していて、サーブレット 3.1 スキーマを指定している web.xml をインクルードしているアプリに対して web.xml ファイルを生成しなくなりました。
  • アプリケーションに JSP がない場合でも、Java クラスファイルを .zip ファイルにパッケージ化するようになりました。

2017 年 2 月 17 日

com.google.cloud.tools の App Engine 用 Maven プラグイン(1.2.0)と Gradle プラグイン(1.1.0)を更新しました。

  • 起動時にローカル データストアをクリアするための clearDatastore フラグを追加しました。
  • ソースコンテキスト タスク / 目標を追加しました。

2017 年 1 月 30 日

  • Java SDK がバージョン 1.9.49 に更新されました。

2016 年 12 月 1 日

  • Java SDK がバージョン 1.9.48 に更新されました。

2016 年 11 月 3 日

  • バージョン 1.9.45 はスキップされました。

  • Java Runtime と SDK がバージョン 1.9.46 に更新されました。

2016 年 10 月 27 日

  • Channel サービスと XMPP サービスが非推奨になりました。これらのサービスは 2017 年 10 月 31 日に完全に無効になります。

2016 年 10 月 17 日

  • Java Runtime と SDK がバージョン 1.9.44 に更新されました。

  • Blobstore の blob が Cloud Storage バケットに保存されるときに設定される新しい BlobInfo プロパティが追加されました。

2016 年 8 月 1 日

Admin API に関する注意事項

  • Admin API のバージョン 1 の正式版がリリースされました。

2016 年 8 月 1 日 - バージョン 1.9.42

  • バージョン 1.9.41 はスキップされました。

  • バージョン 1.9.42 には全般的なバグの修正と改善が含まれています。

2016 年 7 月 21 日

Java ランタイムに関する注意事項

  • App Engine ダッシュボードで誤って報告された可能性のあるメモリ使用量(インスタンス「平均メモリ」と「メモリ使用量」のグラフの下の値)を修正しました。この問題は請求には影響しません。

2016 年 7 月 18 日 - バージョン 1.9.40

  • バージョン 1.9.39 はスキップされました。

  • LeaseTasksByTag のリクエストは 1 秒間に 25 個のリクエストに制限されます。

  • App Engine ダッシュボードに表示されるサーバーエラーとクライアント エラーで、URL ごとのステータスが正確に反映されるようになりました。

  • GCP Console の App Engine チュートリアルが新しくなりました。使用する言語を選択して、コンソール内で直接インタラクティブなチュートリアルを起動してください。

  • cron タスクの最大制限が 250 に増加されました。

Java ランタイムに関する注意事項

  • すべての Java アプリケーションが 64 ビット版の Java ランタイムを使用するように、自動的にアップグレードされます。このローリング アップグレードは 2016 年 7 月 20 日に開始されます。

2016 年 7 月 1 日

Cloud Datastore

2016 年 5 月 25 日 - バージョン 1.9.38

  • ドキュメントに記載されているように、許可範囲(80~90、440~450、1024~65535)外のポートへのリクエストに対して URL 取得によって返されるエラーで、常に INVALID_URL を返すようになりました。

Cloud Datastore

  • クロスグループ トランザクションを commit する場合、新しいエンティティまたは更新されたエンティティに対して返されるバージョン番号はすべて同じになります。以前の動作では、クロスグループ トランザクションの一部として commit された同じグループ内のエンティティのバージョン番号は同じでしたが、別のグループ内のエンティティのバージョン番号は異なる場合がありました。この変更によって、クロスグループ トランザクションの一部として commit された場合、エンティティ グループに関係なく、新しいエンティティと更新されたエンティティのすべてのバージョン番号が同じになります。以前と同様に、更新されないエンティティには新しいバージョン番号が付与されません。

2016 年 5 月 4 日 - バージョン 1.9.37

全般的なバグの修正と改善が含まれています。

2016 年 5 月 2 日

App Engine フレキシブル環境

  • App Engine フレキシブル環境で Ruby ランタイムが使用できるようになりました。

2016 年 4 月 18 日 - バージョン 1.9.36

ユーザーのリクエストにお応えして、IAM の役割とグループ展開のサポートにおいて、App Engine に App Engine Users API が加わりました。これは、プロジェクトのオーナー、編集者、または閲覧者、あるいは App Engine の管理者であるユーザーが役割を直接またはグループのメンバーによって与えられているかどうかに関係なく、Users API によって「管理者」と見なされることを意味します。このリリースでは、「OverQuota」例外タイプに関連するエラー メッセージに、可能であればエラーの詳細が含まれるようになりました。

Java ランタイムに関する注意事項

  • Google はメールサービスの割り当ての増加リクエストを受け入れなくなりました。代わりに、Sendgrid を使用してください。

2016 年 3 月 24 日 - バージョン 1.9.35

  • App Engine 管理対象 VM の名前が App Engine フレキシブル環境に変更されました。
  • トレースのタイムスタンプをログのタイムスタンプに合わせて修正しました。

Java ランタイムに関する注意事項

  • このリリースには、新しい Java SDK が含まれていません。Java ユーザーは引き続き 1.9.34 SDK を使用する必要があります。

2016 年 3 月 16 日

Java ランタイムに関する注意事項

  • Java SDK のバージョン 1.9.34 を使用できるようになりました。

2016 年 3 月 4 日 - バージョン 1.9.34

  • 有料アプリケーションの URL 取得のデフォルトの割り当てが増加されました。詳しくは、割り当てページをご覧ください。

Java ランタイムに関する注意事項

  • このリリースには、新しい Java SDK が含まれていません。Java ユーザーは引き続き 1.9.32 SDK を使用する必要があります。

2016 年 2 月 17 日 - バージョン 1.9.33

  • URL パス /form が使用可能になり、アプリケーションに転送できるようになりました。以前は、このパスはブロックされていました。

Java ランタイムに関する注意事項

  • このリリースには、新しい Java SDK が含まれていません。Java ユーザーは引き続き 1.9.32 SDK を使用する必要があります。

2016 年 2 月 3 日 - バージョン 1.9.32

  • 管理対象 VM のコンテナ作成の選択肢

    gcloud preview app deploy(および mvn gcloud:deploy)コマンドでは、アーティファクトをサーバーにアップロードし、アプリケーションを管理対象 VM 環境にデプロイするためのコンテナを作成します。

    コンテナ イメージをリモートで作成するための 2 つのメカニズムがあります。デフォルトの動作は、Docker がインストールされている一時的な Compute Engine 仮想マシンにコンテナを作成することです。あるいは、ベータ版の Cloud Build サービスを使用できます。Cloud Build サービスを使用するには、次の手順を行います。

    1. プロジェクトで Cloud Build API を有効にします
    2. コマンド gcloud config set app/use_cloud_build True を使用します。これにより、gcloud preview app deploy のすべての呼び出しで、このサービスを使用するようになります(デフォルトの動作に戻すには、コマンド gcloud config set app/use_cloud_build False を使用します)。

Java ランタイムに関する注意事項

  • Datastore に対する低レベル API Transaction.rollback() の例外処理が向上しました。トランザクションに関連付けられたオペレーションが失敗した場合に、例外の代わりに、INFO ログメッセージが生成されます。

2016 年 1 月 14 日 - バージョン 1.9.31

App Engine で Google グループがサポートされるようになりました。Google グループをプロジェクトのメンバーとして追加すると、グループのメンバーが App Engine へのアクセスを許可されます。たとえば、Google グループがプロジェクトの編集者である場合、グループのすべてのメンバーに App Engine アプリケーションへの編集者アクセス権限が付与されるようになりました。

2015 年 11 月 30 日 - バージョン 1.9.30

ペイロードがないタスクキュー タスクに対する push キュー リクエストのヘッダーに、0 に設定された Content-Length エントリが含まれるようになりました。以前はこのようなリクエストのヘッダーに Content-Length エントリが含まれていませんでした。

2015 年 11 月 30 日 - バージョン 1.9.29

  • 存在していないクエリ、削除とマークされたキュー、クエリテーブルが停止した場合のキューの深さの計算と保存が停止されます。
  • Endpoints API を使用する開発者向けに、@Api アノテーションへの検出可能な boolean パラメータが追加され、ユーザーが API 検出を無効にできるようになりました。この機能を使用すると、検出に依存するクライアント ライブラリ(JavaScript など)や API Explorer の動作が妨げられます。

2015 年 10 月 29 日 - バージョン 1.9.28

2015 年 7 月 14 日に非推奨になった Prospective Search API が既存のユーザーに対しても制限されるようになりました。これは 2015 年 12 月 1 日に完全に停止されます。* 検索クエリでの Geo フィルタリングの精度が向上しました。

Java ランタイムに関する注意事項

  • Java DevAppServer の Files API が無効になりました。

2015 年 9 月 25 日 - バージョン 1.9.27

新しく課金が有効にされたアプリケーションはデフォルトで 1 日の予算が無制限になり、それまでデフォルトだった $0 の 1 日の最大予算がなくなりました。これによって、予算不足による望まない停止が回避されます。アプリケーションの 1 日のコストの上限を設定するには、課金を有効にした後で、App Engine の設定で予算を設定します。詳細については、1 日の予算の設定をご覧ください。

データストア

  • バグの修正: 繰り返される数値ファセットを使用できるようになりました。
  • ファセット検索の一般提供を開始しました。

2015 年 8 月 27 日 - バージョン 1.9.26

  • oauth2client ライブラリがバージョン 1.4.2 にアップグレードされました。
  • thread_id または request_id がログエントリのフィールドとして含まれる MVM アプリケーションログに [前後のログを表示] メニューが追加されました。これによって、いずれかのフィールドに基づいてアプリケーションのログを並べ換えられるようになりました。
  • 現在の負荷に対してアプリケーションをプロビジョニングし、VM とアプリケーション レベルの両方の指標に基づいた柔軟なプロビジョニングを設定できるようになりました。
  • https://developers.google.com/identity/protocols/application-default-credentials を使用する OAuth2 認証情報を使用して、リモート APIにアクセスできるようになりました。
  • ペイロードが大きすぎる URLFetch リクエストに対して RequestPayloadTooLargeException を使用します。

Java ランタイムに関する注意事項

  • Java の URLFetch API はデフォルトの取得期限を指定するプロパティを取得します。appengine.api.urlfetch.defaultDeadline は、Java のデフォルトの URLFetch タイムアウトを appengine-web.xml に指定するために使用できる浮動小数点数値(秒単位)です。

2015 年 8 月 14 日 - バージョン 1.9.25

  • PyAMF バージョン 0.7.2(ベータ版)が追加されました。
  • 管理コンソールのメニューが GCP Console にリダイレクトされるようになりました。管理ログなどの一部のサービスは、引き続き管理コンソールで使用できます。
  • データストアで、プロパティが空白のリストを表現できるようになりました。
  • retry_limit がゼロに構成されているキュー内の失敗したタスクは再試行されなくなりました。
このページは役立ちましたか?評価をお願いいたします。

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

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