Maven: Как добавить пользовательскую запись classpath для выполнения плагина? - PullRequest
2 голосов
/ 23 февраля 2011

ОБНОВЛЕНИЕ : Сначала кажется, что проблема связана с плагином SoapUI maven, но на самом деле это не так, поэтому, пожалуйста, прочитайте.

Я запускаю плагин SoapUI с Maven2, как это:

<plugin>
    <groupId>eviware</groupId>
    <artifactId>maven-soapui-plugin</artifactId>
    <version>3.6.1</version>
    <configuration>
        <settingsFile>${basedir}/src/test/resources/soapui-settings.xml</settingsFile>
        <projectFile>${basedir}/src/test/resources/my-soapui-project.xml</projectFile>
        <outputFolder>${project.build.directory}/soapui-output</outputFolder>
        <printReport>true</printReport>
        <junitReport>true</junitReport>
        <exportAll>true</exportAll>
        <soapuiProperties>
        <property>
          <name>soapui.logroot</name>
          <value>${project.build.directory}/soapui-logs/</value>
        </property>
        </soapuiProperties>
    </configuration>
</plugin>

Он отлично работает и помещает все файлы журнала soapui в ${project.build.directory}/soapui-logs/ с одним исключением: global-groovy.log, который входит в basedir (похоже, ошибка в конфигурации SoapUI log4j).

Мне нужна опция для переопределения soapui-log4j.xml файла, который поставляется с плагином SoapUi maven, и исправления GLOBAL_GROOVY_LOG appender из:

<param name="File" value="global-groovy.log"/>

к этому:

<param name="File" value="${soapui.logroot}global-groovy.log"/>

В прошлом язапустил тест SoapUI программно из теста JUnit и просто поместил обновленный файл soapui-log4j.xml в src/test/resources/com/eviware/soapui/resources/conf/soapui-log4j.xml, и это сработало.Maven копирует его в target/test-classes и добавляет этот путь к classpath для запуска модульных тестов.

Теперь проблема с плагином SoapUI maven заключается в том, что я не знаю, как добавить src/test/resources/com/eviware/soapui/resources/conf/soapui-log4j.xml к плагину classpath.Есть ли что-то похожее на additionalClasspathElements опцию конфигурации Surefire ?

Итак, другими словами, я хочу знать, как добавить дополнительные записи пути к классам в любую универсальную среду выполнения плагинов maven, не только в SoapUIплагин.

1 Ответ

1 голос
/ 23 февраля 2011

Возможно добавить в плагин зависимости, используя элемент зависимость .Из ссылки на POM:

Дополнительные зависимости, которые этот проект должен ввести в загрузчик классов плагина.

Я не знаю, как maven обрабатывает эти зависимости, поэтому он можетразместите их после собственных классов плагина, что эффективно предотвращает переопределение конфигурации log4j, но попробуйте;упакуйте файл конфигурации log4j в jar и добавьте его в качестве зависимости к плагину.

...