में मॉड्यूल के संस्करण के रूप में project.parent.version का उपयोग करने पर चेतावनी मेवेन मल्टी-मॉड्यूल प्रोजेक्ट्स में जहां मैं चाहता हूं कि प्रत्येक मॉड्यूल हमेशा माता-पिता के समान संस्करण बनाए रखें, मैंने आमतौर पर कुछ ऐसा किया है मॉड्यूल के pom.xml में निम्नलिखित:मैवेन 3
<parent>
<groupId>com.groupId</groupId>
<artifactId>parentArtifactId</artifactId>
<version>1.1-SNAPSHOT</version>
</parent>
<groupId>com.groupId</groupId>
<artifactId>artifactId</artifactId>
<packaging>jar</packaging>
<version>${project.parent.version}</version>
<name>name</name>
जब से मैं Maven 3.0-अल्फा 5 उपयोग शुरू कर दिया है, मैं ऐसा करने के लिए निम्न चेतावनी मिलता है।
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.groupid.artifactId:name:jar:1.1-SNAPSHOT
[WARNING] 'version' contains an expression but should be a constant. @ com.groupid.artifactId:name::${project.parent.version}, /Users/whaley/path/to/project/child/pom.xml
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
मैं, पता है कि माता-पिता संस्करण के लिए एक मॉड्यूल के संस्करण बांधने के साथ वास्तविक समस्या है उत्सुक हूँ, यदि कोई हो? या यह किसी भी अभिव्यक्ति के दौरान एक सामान्य चेतावनी का मामला है, भले ही यह project.parent.version है, संस्करण तत्व के लिए उपयोग किया जाता है।
बस यहां आपके बोल्ड किए गए उत्तर को यहां दस्तावेज़ित किया गया: http://maven.apache.org/guides/introduction/introduction-to-the-pom.html#Project_Inheritance। मेवेन में यह तरीका बताया गया था: परिभाषित मार्गदर्शिका, लेकिन जब मैंने इसे पढ़ा था तब मैंने उस पर चमक उठी। सुधारों के लिए धन्यवाद। – whaley
http://jira.codehaus.org/browse/MNG-4715 में उदाहरण तत्व के लिए संपत्ति का उपयोग करने के कुछ वैध कारण प्रतीत होते हैं, इसलिए मुझे विश्वास नहीं है कि इसके लिए कोई उपयोग नहीं है, लेकिन +1 के लिए हमें याद दिलाते हुए कि यदि आप पैरेंट पोम संस्करण का उपयोग करने के लिए submodules चाहते हैं, तो बस टैग को हटा दें और विरासत का काम करें। –
metamatt
स्प्रिंग रू 1.3.0.BUILD-SNAPSHOT के रूप में यदि आप बच्चे के पोम से ' '-टैग हटाते हैं, तो यह शिकायत करना शुरू कर देगा कि' संस्करण के लिए आवश्यक है ... '। लेकिन वह स्प्रिंग रू की गलती है, मैवेन नहीं। मेवेन संस्करण-टैग के बिना बस ठीक काम कर रहा है। –