Как настроить плагин установки maven для изменения расположения файла сборки проекта - PullRequest
0 голосов
/ 25 января 2012

У меня обычная ситуация сборки maven, в которой я хочу полностью настроить поведение установки maven для моей сборки проекта.

Мой проект является типичным мультимодулем Java -j2ee EAR-проекта

Решение должно работать в автономном режиме, чтобы подключаемые модули maven deploy и deploy-file выходили из области действия решения.

Я пытался указать следующие настройки в моем POM, но они не работают с опцией mvn –o (офлайн). Это означает, что подключаемый модуль maven deploy должен работать в режиме онлайн (настройка прокси)

<distributionManagement>
 <repository>
<id>Local-Build-Shared-Dir</id>
<name>My  Build Drop Folder</name>
 <url>file://X:/WorkBeanch/Maven/ProjectBuilds/.. /BuildDir/…</url>  

... ..

Как настроить подключаемый модуль maven для достижения следующих целей -

 Я хочу получить файл сборки проекта (ear, war или jar) в отдельной локальной папке, а не в локальном репозитории maven

 Я не хочу, чтобы какие-либо артефакты (ухо, война или банка) моего основного проекта помещались в локальный репозиторий Maven. Для этого я попытался обойти этап установки для другого подмодуля с помощью следующей статьи (установить плагин + пропустить до true), но все же этап установки выполняется во всех подмодулях.

 Я хочу настроить имя и путь к локальной папке для удаления сборки (имя + местоположение) для файла сборки моего проекта

Я могу добиться того же, установив плагин пакета maven, но в этом случае мне нужно локально скопировать мой основной файл сборки в другую локальную папку, а затем очистить целевую папку. С этим решением все же я вынужден пропустить этап установки, то есть запустить только «mvn –o clean package».

Как я могу получить тот же набор требований, работая с тонкой настройкой плагина maven install

1 Ответ

1 голос
/ 26 января 2012

Цель подключаемого модуля maven - добавить артефакты в локальный репозиторий.

Прямо из плагина Введение :

Плагин установки используется на этапе установки для добавления артефактов в локальный репозиторий.

Так что вы, вероятно, захотите не запускать 'mvn install', а вместо этого запускать только до пакета или проверки фазы жизненного цикла. Полный жизненный цикл можно найти здесь .

Кроме того, вам, вероятно, потребуется написать свой собственный плагин (или использовать что-то вроде maven-antrun-plugin), чтобы копировать / перемещать файлы из целевой папки туда, куда вы хотите. Конечно, это идет вразрез с обычными идеями Maven, поэтому вы должны убедиться, что у вас есть веская причина сделать что-то странное, подобное этому.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...