Как я могу исключить проект из чистой установки mvn?

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

Я запускаю maven clean install в файле pom, который включает в себя несколько модулей (и подмодулей). Мне было интересно, можно ли запустить сборку maven, но указать в командной строке, чтобы пропустить модуль из сборки (на данный момент я исключаю их вручную из сборки, но я предпочитаю делать это через командную строку).

Я знаю, что с помощью -pl вы можете выборочно выбирать проекты, но я хотел бы выборочно исключить (в виде черного списка) некоторые из них.


person Thomas    schedule 09.11.2012    source источник
comment
Это как раз спросили на днях. Короче говоря, нет способа сделать это из командной строки... пока. stackoverflow.com/q/13266470/73446   -  person gregwhitaker    schedule 09.11.2012
comment
Как-то я пропустил этот вопрос в своем поиске   -  person Thomas    schedule 10.11.2012


Ответы (1)


Вы можете иметь отдельный раздел <modules> в профиле и активировать нужный профиль в командной строке.

Пример:

<profiles>
    <profile>
       <id>profile-1</id>
       <activation>
         <activeByDefault>true</activeByDefault>
       </activation>
       <modules>...</modules> <!-- module set 1 -->
    </profile>
    <profile>
       <id>profile-2</id>
       <modules>...</modules> <!-- module set 2 -->
    </profile>
</profiles>

Теперь, в зависимости от ваших текущих потребностей, выполните

mvn install
mvn install -P profile-2

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

person MaDa    schedule 09.11.2012
comment
Спасибо за предложение, но я действительно искал решение командной строки, где мне не нужно создавать профили или трогать файл pom. Видимо пока нет :( - person Thomas; 10.11.2012
comment
Исключение проекта — нетривиальный случай для Maven, поэтому рискну предположить, что это никогда не будет так просто, как параметр командной строки. - person MaDa; 10.11.2012