Включить расширение maven3 только для указанных профилей
У меня есть расширение, которое я использую в моей сборке Maven 3, которое выводит информацию о сборке для меня. Это немного многословно, поэтому я хотел бы запустить его только в некоторых профилях сборки. Но <extensions>
разрешены только в основном <build>
а не в профилях.
Так что мой вопрос в два раза. Во-первых, есть ли способ ограничить запуск расширения только в определенных профилях, что я могу сделать в pom.xml
? Во-вторых, если нет, то как мне это реализовать?
Моей первоначальной мыслью было позвонить mavenSession.getCurrentProject().getActiveProfiles()
и сравните это со списком профилей, на которых я хочу запустить расширение. Но тогда мне нужно как-то передать информацию профиля там.. Я хотел бы сделать это в pom.xml
а не из командной строки, но я не уверен, где эта информация должна храниться.
1 ответ
Единственное, что должно сработать, - это использовать свойство, содержащее список имен разделенных запятыми профилей, в идеале именуемый таким образом, чтобы сделать соединение очевидным (например, "extension-artifactId".run-for-profile). Затем передайте это либо через -D, либо поместите его в раздел