मेरे पास एक मल्टी-मॉड्यूल प्रोजेक्ट है, जैसे यह:
main-project/
module1/
module2/
sub-module1/
sub-module2/
sub-module3/
...
module3/
module4/
...
मुझे Maven2 में गुणों के एक सेट को परिभाषित करने की आवश्यकता है (यह उस वातावरण पर निर्भर है जिस पर मैं अपनी परियोजना जारी करना चाहता हूं)। मैं <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}