Я использую rpm-maven-plugin, чтобы создать RPM, который устанавливает мой проект java. Мне нужно создать RPM для CentOS 5 и CentOS 7. Я уже использую профили для установки свойств, содержащих имена некоторых зависимостей RPM, которые отличаются друг от друга, а затем ссылаются на эти свойства в плагине rpm.Должен ли я дублировать конфигурацию плагина в профилях Maven?
Теперь мне нужно также изменить файлы, которые RPM ставит на место на основе профилей cent5 vs cent7 (в процентах 5 по-прежнему используются скрипты инициализации, в процентах 7 отправлено файлы единиц с помощью systemd). Я не могу придумать простой способ сделать это, установив свойства, мне нужно включить в них разные сопоставления файлов. Нужно ли дублировать мою (длинную) конфигурацию плагина RPM в двух профилях, чтобы получить изменения? Это кажется опасным, потому что конфигурация плагина длинная, и дублирование неизбежно приведет к тому, что разработчики вносят будущие изменения в один и пропускают другой. Есть ли способ добавить к плагину конфигурацию с профилем?
Каков наилучший способ управления небольшим изменением сложной конфигурации плагина в профилях maven?
Как насчет использования [агрегации Maven [с субмодулями]] (https://maven.apache.org/pom.html#Inheritance_v) ** и ** [наследование (с родительским ПОМ)] (http: //books.sonatype.com/mvnref-book/reference/pom-relationships-sect-pom-best-practice.html#pom-relationships-sect-multi-vs-inherit). См., Например, [Maven и профили: ...] (http://stackoverflow.com/a/33291639/1744774). –
Прочитав эти ссылки, я считаю, что я убежден, что я попадаю в ловушку, пытаясь использовать профили для всего, вместо того, чтобы использовать стратегии, которые разбиваются на несколько POM. Я думаю, что механизм наследования даст мне то, что мне нужно. Общие шаги сборки в одном, унаследованные еще двумя POM, специфичными для целевых ОС. У меня будет плагин RPM, определенный как с незначительными изменениями, так и с покупкой мне масштабируемого решения, когда неизбежно возникнут другие различия. Если вы разместите это как ответ, я соглашусь с ним. – tdimmig