0

Google Eclipse プラグインをインストールし、最初のテスト Web アプリケーション プロジェクトを作成しました (GWT と GAE SDK の両方を使用)。プラグインは、war/いくつかの奇妙なサブディレクトリとファイルを含むディレクトリを持つプロジェクトを自動生成しました。これらの多くをオンラインで検索すると、それらの他の同様の自動生成が返されましたが、それらが何であるか、またはそれらが何をするかについての実際の説明はありませんでした:

  • war/WEB-INF/deploy/<myapp>/rpcPolicyManifest/**
  • war/WEB-INF/deploy/<myapp>/symbolMaps/**
  • war/<myapp>/symbolmanifest.json
  • gwt-unitCache/**

また、GAE にデプロイされる予定の GWT WAR の適切な構造について、少し混乱しています。どのコンテンツを の下にパッケージ化する必要がありwar/WEB-INF/ますか? war/ルートの下にパッケージ化する必要があるコンテンツは何ですか? GWT/GAE WAR に関するその他の特別な考慮事項はありますか? 前もって感謝します!

4

1 に答える 1

1

war/フォルダー内のほとんどすべてがGAE にデプロイされます。war/WEB-INF/appengine-generated/ などのプラグインで使用される一時ファイルを除く

war/WEB-INF/フォルダーには、GAEのセットアップに必要なものが含まれています。これには、サーブレット、キュー、ロギング、RPC などの GAE 設定が含まれます。また、サーバー側で使用されるライブラリと一部の GWT マッピングも含まれます。

GWT ライブラリはコンパイル時にのみ必要であり、サーバー上では必要ないことに注意してください。war/ の外にある lib/ フォルダーにすべての GWT ライブラリーを置くことができます。


  • war/WEB-INF/deploy/<myapp>/rpcPolicyManifest/**

RPCは、GWT コードから直接サーバー メソッドを呼び出すために使用されます。GWT/GAE は、RPC をそのまま使用できるように設計されています。私の推測では、RPC ポリシー マニフェスト ファイルが存在するだけで、GWT コードが RPC を使用できるように GAE を構成するのに十分なので、そこに置くだけなので、心配する必要はありません。


  • war/WEB-INF/deploy/<myapp>/symbolMaps/**

プラグインはここで必要なものを自動的に追加するので、手を加える必要はありません。しかし、symbolMaps は、GWT がブラウザーのバージョンに基づいて異なるバージョンのアプリを提供するために使用する辞書のようです。私の symbolMap ファイルの最初の数行は次のようになっています。

# { 1 }
# { 'user.agent' : 'gecko1_8' }
# jsName, jsniIdent, className, memberName, sourceUri, sourceLine
Duration,,com.google.gwt.core.client.Duration,,jar:file:/opt/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.4.0.v201208080121-rel-r42/gwt-2.4.0/gwt-user.jar!/com/google/gwt/core/client/Duration.java,21

ユーザー エージェントが gecko 1.8 である場合に、JavaScript シンボルの「期間」をどのように解釈するかを指定します。各ブラウザー コンパイル (FF、Opera、Safari、IE など) には独自のマッピングがあり、GWT コンパイラーによるブラウザー固有の最適化が可能です。


  • war/<myapp>/symbolmanifest.json

私のプロジェクトにはこのファイルがありませんが、おそらく上記の GWT シンボル マップに関連しています。私の推測では、GWT アプリが使用する JavaScript シンボルを定義していると思います。そのスニペットを投稿すると、これが当てはまるかどうかを確認できます。


  • gwt-unitCache/**

これは、開発中にのみ使用されるキャッシュ フォルダーです。GWT 2.4.0 のリリース ノートを参照してください。

Persistent Unit Cache: GWT Compiler および Development モードは、実行間でコンパイル アーティファクトをキャッシュするようになりました。これにより、反復開発の起動時間が短縮されます。

于 2012-09-24T12:08:10.057 に答える