Maven ベースのマルチモジュール プロジェクトがあります。プロジェクトは、とEAR
を含むサブ展開を含むファイルです。には 2つが含まれており、2 つ目は にあります。のテスト ケースは、テスト ディレクトリから選択した場所で正常に実行されます (手動で除外します)。しかし、テストケースを実行すると、テストケースに失敗したメインディレクトリからインクルードされます。first-ejb.jar
first-web.war
first-ejb.jar
persistence.xml
src/main/resources/META-INF/persistence.xml
src/test/resources/META-INF/persistence.xml
first-ejb.jar
persistence.xml
persistence.xml
main
first-web.war
persistence.xml
first-ejb.jar
したがって、私の質問は、モジュールのテストケースを実行persistence.xml
するときにテストディレクトリから含めるマルチモジュールプロジェクトの Maven でどのように言うかです。first-ejb.jar
first-web.war
編集:
というわけで、のテスト実行時に使われているクラスパスを調べてみましたfirst-web.war
。依存関係として含まれていることがわかりますfirst-ejb.jar
(これは本番ビルドでは正しいです)。実際、これはモジュールのfromをfirst-web.war
使用することになるため、モジュールのテストを台無しにしています。persistence.xml
src\main\resources
first-ejb.jar
したがって、私がする必要があるのは、ディレクトリに含まれているもの以外のすべてをfirst-ejb.jar
含む別のアーティファクトを宣言することだと思います。私はそれに名前を付けることができました。次に、プロファイルを介してテストを実行するために、このアーティファクトをプロジェクトの依存関係にすることができます。persistence.xml
src\main\resources
first-ejb-test.jar
first-web.war
maven