У мене є багатомодульний проект, як цей:
main-project/
module1/
module2/
sub-module1/
sub-module2/
sub-module3/
...
module3/
module4/
...
Мені потрібно визначити набір властивостей (які залежать від середовища, в якому я хочу випустити свій проект) в Maven2. Я не буду використовувати, <properties>
оскільки є багато властивостей ... Таким чином, я використовую плагін Properties Maven2 .
Файли властивостей знаходяться в main-project/
каталозі. Як я можу встановити правильний каталог у головному pom.xml, щоб вказати будь-яким дітям, де знайти файл властивостей?
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>???/env_${env}.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
Якщо я встановлю лише <file>env_${env}.properties</file>
, коли Maven2 компілює перший модуль, він не знайде main-project/env_dev.properties
файл. Якщо я встановлю <file>../env_${env}.properties</file>
, помилка буде підвищена на батьківському рівні або на будь-якому рівні підмодуля ...
${maven.multiModuleProjectDirectory}