Конфигурация Maven для двух проектов - PullRequest
2 голосов
/ 23 августа 2009

У меня есть проект A , который создается с помощью сборки mvn: сборка, которая дает мне файл jar с зависимостями. Этот проект в основном получает путь к файлу и преобразует его в XML.

Теперь мне нужно создать новый проект B , который обернет A , пройдя по каталогу и вызвав несколько раз A . ПРИМЕЧАНИЕ: Они должны быть разными приложениями. Я не могу изменить A , изменяя его параметры.

Мне бы хотелось, чтобы при сборке B он сначала собрал A и получил файл JAR.

Какой лучший способ настроить это в pom-файле? Должен ли я иметь два человека? Тот же пом, но две банки строятся?

Спасибо за чтение!

1 Ответ

5 голосов
/ 23 августа 2009

Я бы справился с этим, добавив POM агрегатора с A и B в виде модулей . Затем вы просто создаете агрегатор каждый раз, чтобы A строил до B. Это дает вам гибкость для построения A и B как по отдельности, так и вместе.


Если вы полны решимости вызвать сборку A изнутри B, это можно сделать с помощью maven-exec-plugin для вызова другого экземпляра Maven.

Например:

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>1.1</version>
  <executions>
    <execution>
      <goals>
        <goal>exec</goal>
      </goals>
    </execution>
  </executions>
  <configuration>
    <executable>mvn</executable>
    <!--specified as a property below-->
    <workingDirectory>${projectA.path}</workingDirectory>
    <arguments>
      <argument>clean</argument>
      <argument>install</argument>
    </arguments>
  </configuration>
</plugin>

...

<properties>
  <projectA.path>/path/to/project/a</projectA.path>
</properties>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...