Tenho um projeto de vários módulos, como este:
main-project/
module1/
module2/
sub-module1/
sub-module2/
sub-module3/
...
module3/
module4/
...
Preciso definir um conjunto de propriedades (que dependem do ambiente no qual desejo lançar meu projeto) no Maven2. Não vou usar <properties>
porque tem muitas propriedades ... Assim, utilizo o plugin Propriedades do Maven2 .
Os arquivos de propriedades estão localizados no main-project/
diretório. Como posso definir o diretório correto no pom.xml principal, a fim de especificar para qualquer filho onde encontrar o arquivo de propriedades?
<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>
Se eu definir apenas <file>env_${env}.properties</file>
, quando o Maven2 compilar o primeiro módulo, ele não encontrará o main-project/env_dev.properties
arquivo. Se eu definir <file>../env_${env}.properties</file>
, um erro será gerado no nível dos pais ou em qualquer nível de submódulo ...
${maven.multiModuleProjectDirectory}