Mavenからうまく構築できるかなり複雑なJava EEプロジェクトがあります。それをIDEAにインポートした後、フロントエンドWARとバックエンドEARをローカルのWeblogic 12cサーバに配備しました。プロジェクトには、ジャンパーとしてパッケージ化され、フロントエンドとバックエンドの両方の成果物によって使用されるいくつかの「共通」成果物もあります。デプロイメントのために、私は爆発したアーティファクトを使用して、パッケージ化/アンパックに時間を節約しました。Intellij IDEAのJava EE展開
開発中にいくつかのJavaソースを編集し、更新された成果物を実行中のWeblogicに再デプロイしようとしました。私はShift + F10を押して、成果物の再配備を選択します。IDEAがプロジェクトをビルドするのを参照します。プロジェクトがサーバーに再配備されます。また、多くの場合、最近の変更は表示されません。明示的にプロジェクトを再構築することを選択してから、成果物を再デプロイしようとしても、サーバー上で変更は見られません。デプロイされた成果物に自分の変更を反映させる唯一の安全な方法は、コマンドラインからpackage
という目標を呼び出し、IDEAから再デプロイするmavenを呼び出すことです。 (JRebelはインストールされておらず、IDEまたはWeblogicで使用されていますので、そのまま使用したいと思います)。
IDEAから期待される動作ですか?これは私たちのプロジェクトや何かグローバルに特有のものでしょうか? IDEAは、どのプロジェクトを再構築して再パッケージする必要があるのかを発見してから、EAR/WAR成果物をサーバーに適切に再デプロイする必要がありますか?私の側からその目標を達成する助けが必要なのでしょうか?
変更しているパーツにSNAPSHOTバージョンがありますか?あなたの耳/戦争はどのようにこれらの図書館にアクセスできますか?それはモジュールタグを使用するのか、それとも通常の依存関係のようにそれに依存するのでしょうか?私はこれらの詳細が答えるようにする必要があります。 –
ルートプロジェクトとサブプロジェクトの両方がSNAPSHOTバージョンを使用しています。 WARモジュールとEARモジュールのすべての依存関係は通常の依存関係として含まれており、EJBモジュールの依存関係は使用されません。 –