Подтвердить что ты не робот

Как исключить некоторые модули из сборки Maven с помощью командной строки

Есть ли способ исключить некоторые модули из большой сборки реактора, похожие на -pl?

Вот несколько способов сделать это настойчиво:

Как исключить модуль из сборки реактора Maven?

Я хочу сделать это из оболочки или, по крайней мере, без изменения параметров, которые мне не разрешают изменять.

4b9b3361

Ответ 1

Maven 3.2.1 добавила эту функцию, которую вы можете использовать, чтобы указать точные проекты, которые вы хотите (или исключить проекты, которые вам не нужны) -pl или --projects Здесь, как исключить два:

-pl "!<modulename>,!<modulename2>"

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

Ответ 2

Еще один комментарий к принятому ответу, не забудьте избежать восклицательного знака при запуске команды в bash:

> mvn clean install -pl \!module,\!module/submodule,\!groupId:artifactId

Ответ 3

Я не считаю, что в настоящее время это возможно из командной строки. В maven3 есть открытый запрос функции (http://jira.codehaus.org/browse/MNG-5230).

Похоже, что на данный момент ваш единственный вариант - изменить pom и создать новый профиль сборки, который включает только модули, которые вы хотите построить.

Ответ 4

Как писал Yogesh_D, это можно сделать с аргументом -pl с maven 3.2.1 +

Вот пример:

> mvn clean install -amd -pl !module,!module/submodule

Вам нужно перечислить каждый подмодуль (и под-модуль и т.д.) вручную, он не исключает их рекурсивно. Используйте косую черту для разделения пакетов. Это путь к папке, а не идентификатор группы или артефакта.