दिया गया उत्तर मानता है कि प्रश्न में परियोजना मॉड्यूल एकत्रीकरण के अलावा परियोजना विरासत का उपयोग करती है। वास्तव में वे विशिष्ट अवधारणाएँ हैं:
https://maven.apache.org/guides/introduction/introduction-to-the-pom.html#Project_Inheritance_vs_Project_Aggregation
कुछ प्रोजेक्ट्स मॉड्यूल का एकत्रीकरण हो सकते हैं, फिर भी एग्रीगेटर POM और एग्रीगेटेड मॉड्यूल के बीच माता-पिता-बच्चे का संबंध नहीं है। (कोई भी माता-पिता-बच्चे के संबंध नहीं हो सकते हैं, या बच्चे के मॉड्यूल पूरी तरह से "माता-पिता" के रूप में एक अलग पीओएम का उपयोग कर सकते हैं।) इन स्थितियों में दिए गए जवाब काम नहीं करेंगे।
बहुत पढ़ने और प्रयोग के बाद, यह पता चलता है कि केवल एग्रीगेटर POM ही नहीं, बल्कि सभी एग्रीगेटेड मॉड्यूल को भी अपडेट करने के लिए वर्जन मावेन प्लगइन का उपयोग करने का एक तरीका है ; यह processAllModules
विकल्प है। निम्नलिखित कमांड को एग्रीगेटर प्रोजेक्ट की निर्देशिका में किया जाना चाहिए:
mvn versions:set -DnewVersion=2.50.1-SNAPSHOT -DprocessAllModules
संस्करण मावेन प्लगइन न केवल सभी निहित मॉड्यूल के संस्करणों को अपडेट करेगा, यह इंटर-मॉड्यूल निर्भरता को भी अपडेट करेगा !!!! यह एक बहुत बड़ी जीत है और इससे समय की बचत होगी और सभी प्रकार की समस्याओं से बचाव होगा।
बेशक सभी मॉड्यूल में बदलाव करना न भूलें, जिसे आप एक ही स्विच से भी कर सकते हैं:
mvn versions:commit -DprocessAllModules
आप बैकअप POMS के साथ पूरी तरह से दूर करने और एक कमांड में सब कुछ करने का निर्णय ले सकते हैं:
mvn versions:set -DnewVersion=2.50.1-SNAPSHOT -DprocessAllModules -DgenerateBackupPoms=false