Java (Spring) バックエンドと Javascript (ExtJS/OpenLayers) フロントエンドで構成される Maven で構築された Web アプリケーションがあります。この Web アプリは、多くの派生または子 Web アプリケーションのベースとなっています。つまり、いくつかのドメイン固有の問題に対して機能が拡張された単一の webapp があり、その結果、すべて共通の機能に依存する webapps のセットができました。
これまでは、SVN レポジトリに派生 webapps ブランチのコア コードを用意して、問題を「管理」してきました。これにより、ブランチ間の変更を時折マージできるようになりました。この方法にはさまざまな問題がありますが、それが選択された理由には歴史的な理由がありました。
より良い解決策は、共通のコア コードをライブラリに変換し (難しいことではありません)、派生した子をライブラリにリンクさせることです。残念ながら、一般的な機能の大部分は JavaScript (ExtJS ウィジェットなど) に存在するため、単純に JAR ライブラリを生成するだけでは十分ではありません。「コア javascript」ファイルを子 Web アプリケーションに入れる方法が必要ですが、それらを本当に Java クラスのように扱うことはできませんが、コードベースは Ext JS クラス システムを活用することで最善を尽くしています。
私の質問は、この問題を管理するのに役立つ解決策があるかどうかです。Mavenで似たようなことをした人はいますか? これは非常にまれなケースで、独自の Maven プラグインを作成する必要があるのでしょうか、それとも新しいビルド ツールを探す必要があるのでしょうか?