「コア」と「Web」の部分を含む単一の Maven プロジェクトがあります。複数のモジュールに変換しようとしています。
「Web」パッケージを取得して、新しいプロジェクトに入れました。コア プロジェクトを依存関係として追加し、Eclipse 内でそのクラスを参照できるようにしました。「コア」プロジェクトはWEB-INF\lib
、ビルド時に「web」プロジェクトに正しく表示されます。
問題は、「コア」プロジェクトのクラスが@Autowired
「web」プロジェクトにある場合に発生します。
この特定のケースでは、サービス クラスを「コア」から「web」プロジェクトの Web サービス クラスの 1 つに自動接続しています。コア サービスが含まれるパッケージをcontext:component-scan
「Web」アプリケーション構成に追加すると、そのサービスが見つかりますが、サービスはエンティティを参照するリポジトリを参照し、エンティティ マネージャ ファクトリを探します。私の「コア」プロジェクトのアプリケーションコンテキストで構成されました。
それで、おそらくcontext:component-scan
「コア」プロジェクトでは起こっていないようですか?それとも、ピックアップされたクラスが「Web」プロジェクトで利用可能になっていないのでしょうか?
私はマルチモジュール プロジェクトに全く慣れていないので、誰かがこれを解決するために正しい方向に私を始めさせることができれば、私はそれを大いに感謝します.
問題がある場合は、Run Jetty Run プラグインを使用して Eclipse で m2e を使用しています。ただし、mvn jetty:run
コマンドラインから実行すると、同じ問題が発生するようです。