Гость
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Maven profile activation in child pom / 4 сообщений из 4, страница 1 из 1
04.03.2021, 23:06
    #40050894
Dmitry Eliseev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Maven profile activation in child pom
Здравствуйте уважаемые эксперты.

Может кто нибудь из вас сталкивался с такой проблемой:
Есть parent pom, в котором определён профайл
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
...
    <profile>
        <id>some-id</id>
        <activation>
           <property>
               <name>myprofile</name>
           </property>
        </activation>
    </profile>
...



и есть child pom со свойствами
Код: xml
1.
2.
3.
4.
5.
6.
...
    <properties>
        <myprofile />
...
    </properties>
...



вопреки ожиданию профайл не активируется при сборке дочернего проета
Если профайл и свойство находятся в одном pom, то всё работает ...
...
Рейтинг: 0 / 0
18.04.2021, 01:54
    #40063505
Maven profile activation in child pom
Если профиль не активен в parent'e, то можно считать что его нет и ничего не наследуется в child'e:
- MNG-5127
- https://www.mail-archive.com/dev@maven.apache.org/msg92863.html]Пояснение

Единственный workaround который можно придумать - активировать по наличию файлов. Т.е. когда effective pom для текущего модуля будет строиться, то сначала построится parent pom и там профиль активируется по файлу (файл находится относительно child директории), а затем child - и произойдет то же самое.
...
Рейтинг: 0 / 0
20.04.2021, 18:24
    #40064257
Dmitry Eliseev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Maven profile activation in child pom
Профиль не может быть активен/неактивен в паренте. Парента "несуществует" как такового.
Сначала на основе всех парентов (всей иерархии) строится "эффективный" пом, а потом в нём активируются профайлы.

Проблема у топик стартера в том, что он пытается использовать проперти мавена (секция <properties>), в то время как документация говорит о пропертях окружения (environment variables).

Т.е. с пропертями мавена не будет работать даже если свойство и профиль будут в одном файле.

Решение с файлами тут самое простое.
...
Рейтинг: 0 / 0
20.04.2021, 19:03
    #40064270
Maven profile activation in child pom
Dmitry EliseevПрофиль не может быть активен/неактивен в паренте. Парента "несуществует" как такового.
Сначала на основе всех парентов (всей иерархии) строится "эффективный" пом, а потом в нём активируются профайлы.
...
Т.е. с пропертями мавена не будет работать даже если свойство и профиль будут в одном файле.
Ну т.е. если вычленить полезную информацию: проблема из-за того что профили применяются в самом начале, еще до того как Мавен определил свойства. Поэтому их он использовать просто не может. Ни parent pom, ни effective pom здесь ни на что не влияют.Dmitry Eliseevон пытается использовать проперти мавена (секция <properties>), в то время как документация говорит о пропертях окружения (environment variables).Угумс.. только не env variables (их он как раз не использует для активации), а либо user variables (которые были переданы как -Dpropname в mvn), либо системные переменные из System.getProprties() .
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Maven profile activation in child pom / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]