Google Plugin for Eclipse からの移行

Google Plugin for Eclipse(GPE)は使用できなくなりました。このドキュメントでは、GPE を使用するプロジェクトを Cloud Tools for Eclipse に移行する方法について説明します。

App Engine スタンダード

Cloud Tools for Eclipse は、App Engine 環境の開発をサポートします。 既存の GPE プロジェクトを Cloud Tools for Eclipse に移行するには:

  1. Eclipse IDE for Java EE Developers バージョン 4.8~4.21 を実行していることを確認します。

  2. Cloud Tools for Eclipse をインストールします。このプロセスにより GPE がアンインストールされます。

  3. Eclipse で Project Explorer を開きます。

  4. 変換するプロジェクトを右クリックし、[Configure] > [Convert to App Engine Project] を選択します。

Apps Script

Apps Script プロジェクトは、ウェブブラウザで Google ドライブ スクリプト エディタを使用して、直接編集できます。

Apps Script プロジェクトはすべて、追加のエクスポートや変換を行うことなく Google ドライブでご利用いただけます。

GWT

GWT Eclipse プラグインをインストールします。

GWT プロジェクトでビルドエラーが表示されることがあります。それらを解決するには:

  1. Project Explorer でプロジェクトを選択します。

  2. コンテキスト メニューを開きます。

  3. [Configure] > [Enable GWT SDM builder] を選択します。

App Engine + GWT

App Engine コードはサーバーで実行されます。GWT コードはサーバーからコンパイルされて提供されますが、クライアントで実行されます。これらを App Engine Eclipse プロジェクトと GWT Eclipse プロジェクトという別々のプロジェクトに分離するのが理想的です。

それが完了したら、上記のように、App Engine スタンダードの移行手順GWT プロジェクトの移行手順に沿って操作できます。

Android

Android Studio は Android 開発用の公式 IDE です。

Eclipse から移行する手順を使用して、Gradle ベースのビルドファイルで既存の Eclipse Android プロジェクトを Android Studio プロジェクトに変換できます。

エンドポイント

GPE は Endpoints v1 をサポートしていました。 これを Endpoints v2 にアップグレードする場合、それに対応する IDE 固有の機能はありません。

Eclipse を含む IDE で、現在 Endpoints v2 の統合サポートを提供するものはありません。Endpoints v2 プロジェクトは、他の Java プロジェクトの場合と同様に、Eclipse で操作できます。ただし、Endpoints 固有のコード検査、コード生成、新しいプロジェクト ウィザード、エディタ、およびデプロイツールはありません。

Endpoints v1 を引き続き使用する場合は、他の Java プロジェクトの場合と同様に、バックエンド プロジェクトを Eclipse にインポートできます。 GPE を使用せずに Endpoints v1 を操作する最も簡単な方法は、com.google.appengine:appengine-maven-plugin と Eclipse m2e 統合を利用することです。

プロジェクトがまだ Maven でビルドされていない場合は、pom.xml ファイルを追加する必要があります。

  1. 必要に応じて、m2e プラグインをインストールします。

  2. Project Explorer でプロジェクトを選択します。

  3. コンテキスト メニューから、[Configure] > [Convert to Maven Project] を選択します。 この変換により、pom.xml ファイルがプロジェクトに追加され、Maven ビルダーを使用するようにプロジェクトが設定されます。

  4. その pom.xml に次の dependencies を追加します。

    <dependencies>
      <dependency>
        <groupId>com.google.appengine</groupId>
        <artifactId>appengine-endpoints</artifactId>
        <version>1.9.73</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>javax.persistence</artifactId>
        <version>2.1.0</version>
      </dependency>
      <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>1</version>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>3.0.2</version>
      </dependency>
      <dependency>
        <groupId>com.google.appengine.orm</groupId>
        <artifactId>datanucleus-appengine</artifactId>
        <version>2.1.2</version>
      </dependency>
    </dependencies>
    

    アプリケーションが他のライブラリに依存している場合は、それらの依存関係も追加します。

  5. このプラグインを plugins セクションに追加します。

    <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>endpoints-framework-maven-plugin</artifactId>
        <version>1.0.0</version>
    </plugin>
    
  6. pom.xml が設定されたら、endpoints-framework:discoveryDocs ゴールを使用して、ディスカバリ ドキュメントを生成します。

    $ mvn endpoints-framework:discoveryDocs
    
  7. endpoints-framework:clientLibs ゴールを使用して、クライアント ライブラリを生成します。

    $ mvn endpoints-framework:clientLibs
    

これらのゴールを Eclipse Maven Build 実行構成にマップすると、[Run] メニューから簡単にアクセスできます。

Eclipse Maven ビルド構成

DataNucleus(JPA & JDO)

Cloud Tools for Eclipse はエンティティ クラスを自動拡張しません。

この機能には Maven を使用することができます。

Objectify

Cloud Tools for Eclipse における開発ワークフローは、Objectify 5.x を変更なくサポートします。

必要であれば、Objectify 6.0 に移行できます。この移行には、プロジェクト コードの更新が必要です。Objectify 6.0 を使用したローカル開発では、Cloud Datastore エミュレータ(gcloud beta emulators datastore)も必要になります。これは Eclipse の外で起動しなければならず、起動にはいくつかの追加構成が必要です。

詳細については、Objectify のドキュメントをご覧ください。

次のステップ

  • Cloud Tools for Eclipse にプロジェクトが正常に移行されたため、使用可能なツールとリソースについてさらに学習します。

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