Я бы хотел по-разному развернуть сайт для иерархии проектов Maven для снимков и выпусков (т. Е. http://example.org для выпусков и http://dev.example.org для снимков) и сохранить иерархию проекта (родители, дети). , модули) исправить с соответствующими ссылками.
Моя попытка состояла в том, чтобы назначить свойства для хранения «текущей» информации о сайте, а также свойства для хранения каждого возможного типа сайта (т. Е. Dev, стабильный и т. Д.). Я бы тогда использовал профиль для переключения информации сайта во время релиза. Ниже приведен пример того, что я имею в виду.
Фрагмент родительского POM:
<project>
...
<url>http://${site.host}/</url>
<properties>
<site.host.stable>example.org</site.host.stable>
<site.host.stable.desc>PARENT-STABLE</site.host.stable.desc>
<site.host.dev>dev.example.org</site.host.dev>
<site.host.dev.desc>PARENT-DEV</site.host.dev.desc>
<site.host>${site.host.dev}</site.host>
<site.host.other>${site.host.stable}</site.host.other>
<site.host.other.desc>${site.host.stable.desc}</site.host.other.desc>
</properties>
<distributionManagement>
<site>
<id>site-deploy-id</id>
<url>.../var/www/${site.host}</url>
</site>
</distributionManagement>
<profiles>
<profile>
<id>example-release</id>
<properties>
<site.host>${site.host.stable}</site.host>
<site.host.other>${site.host.dev}</site.host.other>
<site.host.other.desc>${site.host.dev.desc}</site.host.other.desc>
</properties>
</profile>
</profiles>
...
</project>
Пример родительского дескриптора сайта:
<project>
<body>
<links>
<item name="${site.host.other.desc}" href="http://${site.host.other}" />
</links>
</body>
</project>
Пример дескриптора дочернего сайта:
<project>
<body>
<menu ref="parent"/>
</body>
</project>
Эта часть управления распространением прекрасно работает и развертывает файлы, как я и ожидал (в соответствующий каталог на целевой машине на основе активного профиля).
Для фактической части сайта:
С версией 2.2 плагина сайта это прекрасно работает для родительского сайта, но все сайты-потомки возвращаются к снимку или версии "dev", даже когда указанный профиль выпуска активен. В версии 3.0 плагина сайта печатается следующее сообщение и (как указано) родительское меню не создается. Раздел ссылок действует как версия 2.2.
[WARNING] Unable to find a URL to the parent project. The parent menu will NOT be added.
Используя плагин properties-maven-code из codehaus, я вижу, что свойства профиля применяются правильно, но плагин сайта, похоже, игнорирует это.
Есть ли лучший способ выполнить то, что я пытаюсь сделать? Это ошибка или я где-то ошибся?