Maven упаковка на основе Maven-War-плагин - PullRequest
2 голосов
/ 17 февраля 2011

Мне интересно узнать, какие шаги требуются в Maven для реализации пользовательской упаковки и ее привязки к фазе «упаковки».

По сути, мне нужно вызвать стандартный maven-war-plugin и создать ZIP-архив определенной структуры, который будет содержать созданный WAR-файл.Хотя я знаю, как выполнять эти задачи по отдельности, я не совсем понимаю, как их связать.

Я предполагаю последовательность, подобную этой:

  1. На некотором этапе maven-war-плагин вызывается.Он автоматически обрабатывает вещи, специфичные для WAR, и создает файл WAR

  2. Во время фазы пакета вызывается maven-assembly-plugin.Он создает ZIP-архив с необходимой структурой.

Какой самый простой и правильный способ определить эти задачи в файле POM и связать их с жизненным циклом сборки?

Ответы [ 3 ]

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

Обычно мы просто запускаем сборку во время фазы пакета, используя стандартную конфигурацию сборки:

            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>attached</goal>
                    </goals>
                </execution>
            </executions>

если это по какой-то причине не работает, простое решение - разделить войну и почтовый индекс на 2 подмодуля. сгенерируйте войну в первом субмодуле, затем создайте второй субмодуль типа «pom», который запускает плагин сборки.

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

Можете ли вы попробовать вызвать плагин maven-assembly-plug во время фазы установки?

0 голосов
/ 27 февраля 2017

Вы можете изменить фазу каждой задачи.

1) Создайте файл War на этапе подготовки пакета

<phase>prepare-package</phase>

2) Создайте zip-файл на этапе упаковки

<phase>package</phase>
...