Добавление класса маршрута к причалу, работающему в тесте интеграции maven
Я пытаюсь настроить интеграционные тесты для проекта Maven, который создает военный файл. (Как видно здесь http://docs.codehaus.org/display/JETTY/Maven+Jetty+Plugin/.) Однако для файла войны требуется куча файлов .properties в пути к классам, что я не хочу для объединения в войну.
Есть ли способ (желательно с помощью конфигурации плагина), чтобы добавить папку в путь к классам, используемый причалом?
I Я искал это и нашел http://markmail.org/message/awtqrgxxttra3uxx, но это, насколько я могу судить, фактически не работает. Файлы .properties не найдены.
Ответы
Ответ 1
Это должно быть возможно с помощью элемента конфигурации webAppConfig
(пример ниже взято из этот поток):
<webAppConfig>
<contextPath>/nportal</contextPath>
<!-- All I want to do here is add in the /etc/jetty/classes for runtime files. For some reason I have to also add back in the /target/classes directory -->
<extraClasspath>${basedir}/target/classes/;${basedir}/etc/jetty/classes/</extraClasspath>
</webAppConfig>
Ответ 2
Если вы обнаружите, что приведенное выше решение не работает для вас, подумайте о включении тестового пути в конфигурацию Jetty.
<configuration>
<useTestClasspath>true</useTestClasspath>
...
</configuration>
Затем это позволит вам размещать все ресурсы/классы в тестовом классе и отображать их на сервере Jetty без их ползания в производственный код.
Ответ 3
Вы можете разместить свои дополнительные файлы конфигурации под /src/test/resources
и установить свойство <useTestScope>true</useTestScope>
в конфигурации плагина, как указано здесь:
useTestScope
Если true, классы из testClassesDirectory и зависимостей области "test" помещаются сначала в путь к классам. По умолчанию это false.