GWT webapp が 2 つの Maven プロジェクトに分割されており、一方が他方に依存しています。依存関係で何かを変更し、ホスト モードで webapp を実行しているたびに、サブプロジェクトを再構築し、変更を適用するためにホスト モードを再起動する必要があります。かなり時間がかかるので、「ライブ」バージョンの依存関係を使用して GWT を作成する方法はありますか?
3 に答える
2 つのケースがあります。
サーバー側コードの場合、DevMode の組み込みサーバーを使用すると仮定すると、アプリを再構築してからサーバーを更新するだけで十分です。
クライアント側のコード、AFAICT の場合、それらを含む JAR ではなく、依存モジュールのソースおよび出力ディレクトリを使用する必要があります (GWT はクラスパスからソースをロードしますが、変更されたソースが表示される場合にのみ変更されたソースのみが表示されるようです) JAR ではなくフォルダーから (少なくとも、私のテストではそれが見つかりました)。これは The Maven Way™ </a> に反しますが、今のところ唯一の解決策は、実行中のプロジェクトのソースとして依存プロジェクトのソースをインポートする特別なプロファイルを使用することです。私のアーキタイプでその例を見ることができます。
実際には
gwt-maven-plugin
、MGWT-332に対して未解決のバグがあり、リアクタ ビルドの実行時に自動的に実行されます。また、次の公式 ( CodeHausgwt-maven-plugin
Mojo プラグインとは別に、ゼロから書き直されたもの) のために、本当に必要なものについても考えました。あなたの依存関係がリアクター ビルドに由来しない場合、あなたは独力です: あなたはそれを完全に区別することを選択したので、それがどのように動作するかです: 毎回それをリリースする必要があります (スナップショットでさえも)。それに変更を加え、アプリで新しいバージョンを使用します (これは、DevMode を再起動することを意味します)。
これは、 の助けを借りずに DevMode を自分で実行することで回避できます
gwt-maven-plugin
。ただし、クラスパスの管理は自分で行う必要があります (Eclipse 用の Google プラグインを使用すると、起動構成を編集して、Maven によって提供されるクラスパスの前に、依存関係プロジェクトのソース フォルダーをクラスパスに追加するだけでよいと思います)。 JAR を参照してください)。