jetty-maven プラグインを使用して、統合テスト用の Web アプリをデプロイしています。2 つの POM で構成されるプロジェクトがあります。1 つはルートに、もう 1 つはプロジェクト ルートのディレクトリにあります (これを webapp ディレクトリと呼びます)。webapp ディレクトリで maven (jetty-maven プラグインを使用) から統合テストを実行すると、完全に正常に動作します。ただし、ルート ディレクトリから実行すると、webapp ディレクトリ内に移動してテストを実行しますが、何らかの理由でパスが間違っています。(その結果、すべてのリソースが見つかりません)。
ルート ディレクトリ パスを webapp リソース パスに連結します。また、パス内のドット演算子も認識しません。
例: 「./resources/resource.xml」を探す場合
テストが webapp ディレクトリから実行された場合は問題なく動作しますが、ルート ディレクトリから実行された場合はパスが「c:/project/./resources/resource.xml」になります。これを行っているのは jetty-maven プラグインですが、その理由はわかりません。
これを修正する方法はありますか?
これが私のwebappディレクトリPOMの関連部分です
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<webApp>${basedir}/target/webappSNAPSHOT.war</webApp>
<extraClasspath>${project.build.testOutputDirectory}</extraClasspath>
<testClassesDirectory>${basedir}/target/test-classes</testClassesDirectory>
<useTestClasspath>true</useTestClasspath>
<stopPort>9929</stopPort>
<stopKey>stopKey</stopKey>
</configuration>