Я использую плагин Jetty-Maven для развертывания веб-приложения для интеграционного тестирования. У меня есть проект, который состоит из двух POM. Один в корне и один в каталоге в корне проекта (назовите это каталогом веб-приложения). Когда я запускаю интеграционный тест из maven (который использует плагин jetty-maven), в каталоге webapp он работает отлично. Однако, когда я запускаю его из корневого каталога, он заходит в каталог webapp и запускает тест, но по какой-то причине он ошибается путями. (В результате все ресурсы не могут быть найдены).
Он объединяет путь корневого каталога с путем к ресурсам веб-приложения. Он также не понимает оператор точки в пути.
Например: если это нужно искать "./resources/resource.xml"
Это будет нормально работать, если тест был запущен из каталога webapp, однако, если запустить его из корневого каталога, он будет иметь путь: "c: / project /./ resources / resource.xml" Это плагин Jetty-Maven, который делает это, но я не уверен, почему.
Есть ли способ это исправить?
Вот соответствующая часть моего каталога веб-приложений 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>