Мета-профили в Maven - PullRequest
       38

Мета-профили в Maven

4 голосов
/ 19 февраля 2010

Я ищу способ создания мета-профилей, которые просто активируют суб-профили в Maven. Давайте возьмем очень конкретный пример. У меня есть следующие профили:

  • "сервера JBoss"
  • "сервер-кот"
  • "базы данных HSQL"
  • "база-оракул"

Чтобы построить проект, вам нужно выбрать один профиль для сервера и один для базы данных. Я хочу создать два "мета-профиля":

  • "dev" => "server-tomcat", "database-hsql"
  • "prod" => "server-jboss", "database-oracle"

Первая идея, которая приходит, состоит в том, чтобы активировать подпрофилы с помощью свойства:

<profile>
   <id>database-oracle</id>
   <activation>
     <property>
       <name>prod</name>
     </property>
   </activation>
</profile>

Но таким образом я не могу делиться подпрофилями между мета-профилями. Например, я хочу, чтобы мой профиль «database-oracle» активировался мета-профилями «pre-prod» и «prod».

Примечание: мои под-профили просто содержат свойства. Они используются для фильтрации ресурсов и в дочерних poms. Вот почему я думаю, что может быть решение для этой конкретной ситуации.

Идеальная ситуация для меня - это вывод их во внешние файлы свойств, но по одной проблеме за раз;)

Ответы [ 2 ]

6 голосов
/ 19 февраля 2010

Активация профилей из другого профиля невозможна (это обсуждалось в этом предыдущем вопросе ). Ваша первая идея - использовать идентичные свойства для активации различных профилей - это лучшее, что вы можете реализовать, но она действительно имеет ограничения.

2 голосов
/ 23 февраля 2010

Вы пробовали решение с использованием плагина maven-properties-plugin? Некоторые возможности обсуждаются в этом вопросе и здесь .

...