Запустите скрипт bash перед началом сборки - PullRequest
0 голосов
/ 17 декабря 2018

У меня есть родительский pom-файл, который объявляет некоторые модули, например

<modules>
    <module>execution</module>
    <module>model</module>
</modules>

Дело в том, что есть bash-скрипт bootstrap.sh на том же уровне, что и родительский pom.xml, который я хочу выполнитьдо начала сборки модулей, перечисленных выше.

Возможно ли это сделать с помощью Maven?Или есть другой способ выполнить bootstrap.sh до начала компиляции модулей.

1 Ответ

0 голосов
/ 17 декабря 2018

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

Вы можете добавить следующий плагин к агрегатору (это родительский модуль).Вы упомянули в вопросе) pom.xml, чтобы решить вашу проблему.Я выбрал инициализацию для этого, но Вы также можете выбрать установить.Извлеките жизненный цикл. Импортированная вещь, здесь этот код будет выполнен, когда будет выполнена команда maven, которая находится позже в жизненном цикле.(Например: если вы выбрали установку в качестве фазы и выполнили пакет mvn, это не будет выполнено.)

<build>
  <plugins>
    <plugin>
      <artifactId>exec-maven-plugin</artifactId>
      <groupId>org.codehaus.mojo</groupId>
      <version>1.6.0</version>
      <executions>
        <execution>
          <id>Run Script</id>
          <phase>initialize</phase>
          <goals>
            <goal>exec</goal>
          </goals>
          <configuration>
            <executable>bootstrap.sh</executable>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...