0

過去 5 年間、6 つの異なる WebApp で構成される GWT プロジェクトの開発と保守を担当してきました。プロジェクトは GWT 1.5 を使用しており、ant でビルドされています (いずれかのモード dev/war)。これらの webapps は apache-tomcat にデプロイされ、本番サイトではバージョン 5.5 が実行されますが、(テスト用に) バージョン 7.0 が実行されます。

ユーザー エクスペリエンスを強調するために、GWT のバージョンをより新しいバージョンに移行したいと考えています (これについてはまだわかりません)。廃止された API に関する移行、あるバージョンから別のバージョンへの改善について多くのことを読みましたが、新しいプロジェクトのレイアウト自体を扱う構造的な質問がまだあります。

現在、レイアウトは次のとおりです。

WebXXX 
-src
 -net.yyy.webxxx
   -common
    -client
    -server
    -public
    -Common.gwt.xml
   -module1
    -client
    -server
    -public
    -module1.gwt.xml
   -[...]
-test
-build
 -build.xml
 -buildModule1.xml
 -[..]
-Dependencies(SVN_Externals)
-www
-compile-all-modules.xml
-compile-module1.xml
-WebXXXHosted.xml
-[..]

少し明確にするために、フォドラー依存関係は、Workspace ソースを外部ウィジェット ライブラリにリンクするためのプレースホルダーです。このライブラリはコンパイル時にビルドされ (すべてのモジュールをビルドするとき、または Ant タスク内で 1 つだけをビルドするとき)、結果の jar がモジュールの WEB-INF/lib ディレクトリに挿入されます。そのウィジェット ライブラリは gxt.1.1.1 と gwt-incubator 1.5 を使用します。

何年にもわたって、新しい WebApp ごとに新しい Ant タスクを作成することが解決策のように思われていましたが、現在は Maven も使用しているため、移行を行う前にプロジェクトを Maven プロジェクトに変換する必要があるのか​​、それともスキップできるのか疑問に思っています。今のところ、maven 変換です。

Maven は絶対に必要ではないと思いますし、プロジェクトにはそれを (開発モードで) 実行するためのカスタマイズされたいくつかの Ant タスクが含まれているため、(代わりに) 関連する GWT jar を次のようなバージョンに移行できるかどうかも疑問に思っています。すべての UI を書き直す必要はありませんが、大規模な交換を行う必要があり、広範なテストを実行する必要があることはわかっています。

私は完全な暗闇の中にいるので、私が行くことができる方法(Mavenかどうか、移行する必要があるgwtのバージョン、関連するgxtバージョン(まだ関連している場合)を使用する)について自由に教えてください!

みんなありがとう、乾杯!

4

2 に答える 2

0

gwt と maven の両方に移行する予定がある場合は、まず既存のプロジェクトを maven に移行する必要があります。すべての依存関係が Maven リポジトリにあることを確認するか、ローカル リポジトリの処理方法を知っている必要があります。モジュールですべてを Mavenized したら、プロジェクトを Eclipse にインポートして (古い gwt プラグインが必要な場合があります)、すべてのタスクを実行できます。適切な依存関係を選択して、モジュールごとに移行しようとします。

Maven を使用して依存関係を更新するのは、ant を処理するよりもかなり簡単だと思いますが、もちろん、より構成しやすいと感じた場合は、他の方法を選択することもできます。

いずれにせよ、gwt アプリケーションを 1.5 から 2.5.1 に移行する作業は難しい場合があります。まず、アプリにどのような問題が発生する可能性があるか (新しいウィジェット インターフェイス、ハンドラーなど) を知るために、gwt の進化を知る必要があります。

数年前から廃止された gwt-incubator に依存しています。gwt-2.5.1 で動作するビルドがあるかもしれませんが、おそらく動作しないものがたくさんあります。セルリスト、日付ピッカーなど、インキュベーターから gwt に移動した機能がいくつかあるため、gwt の新しいものを使用してコードを書き直す必要があります。

あなたのプロジェクトは古い gxt バージョンに依存しており、API に多くの変更が加えられています。コードにも多くの変更を加える必要があると思います。

要約すると、ant プロジェクトのマベナイズはそれほど難しくなく、Web には十分な情報がありますが、gwt アプリを 1.5 から 2.5.1 に移植するのは簡単な作業ではありません。古いものを交換する方法や問題を修正する方法を理解するために多くの時間を費やす準備をしてください。

于 2013-06-06T11:15:01.273 に答える