как передать определенные свойства активного профиля дочернему pom - PullRequest
0 голосов
/ 15 января 2019

я все, я работаю с проектом maven, которые все связаны. в моём отце я определил 4 профиля (PROD, CI, CE, LOCAL), каждый из которых использует один и тот же ключ свойства (project.type.environment) с разными значениями (common, commonCI, commonCE, commonPROD). когда я запускаю профиль, это свойство используется другим заданием для фильтрации нужного файла свойств. но, разумеется, если я запускаю два профиля, возникает конфликт с ключом, и используется только последний определенный. я знаю, что есть похожая проблема, но я хочу знать, возможно ли это, после переименования свойства (project.type.prod, project.type.ci ecc) для каждого профиля, передавая правильный ключ в фильтр каждого работа.

// это один профиль, определенный в папе пом

    <profiles>
            <profile>
                <id>profile-local</id>
                <build>
                    <plugins>

                        <plugin>
                            ...
                        </plugin>
                    </plugins>
                </build>
                <activation>
                    <activeByDefault>false</activeByDefault>
                    <property>
                        <name>PROFILE</name>
                        <value>profile-local</value>
                    </property>
                </activation>
                <properties>
                    <project.type.environment>common</project.type.environment>
                </properties>
            </profile>

//and this is the filter in each pom job

    <build>
            <filters>
                <filter>src/main/resources/filter/commonGE.properties</filter>
                <filter>src/main/resources/filter/${project.type.environment}.properties</filter>
            </filters>
    ...
    </build>

(common GE is a generic common) 

// я хочу сделать что-то вроде этого:

..
<project.type.local>common</project.type.local>
..

// и в фильтре

<filter>src/main/resources/filter/commonGE.properties</filter>
                <filter>src/main/resources/filter/ (key of the current active profile).properties</filter>

спасибо

...