क्यों pom.xml का ModelVersion आवश्यक है और हमेशा 4.0.0 पर सेट होता है?


94

मैंने देखा है कि Maven की <modelVersion></modelVersion>pom.xml हमेशा 4.0.0 पर सेट होती है।

क्या आप मुझे यह समझने में मदद कर सकते हैं कि इस टैग का महत्व क्या है और इसे 4.0.0 पर क्यों सेट किया जाना चाहिए?


Stackoverflow में आपका स्वागत है। आपको इसे पढ़ना चाहिए: stackoverflow.com/questions/how-to-ask - इसके अलावा, क्या आप थोड़ा अधिक विशिष्ट हो सकते हैं?
ज़ेव्सो

8
क्षमा करें, लेकिन Wlll इसे अच्छी तरह से समझ गया। आपकी मदद के लिए धन्यवाद
महेश

जवाबों:


86

यह हमेशा मावेन 2 और 3 में 4.0.0 पर सेट होता है, क्योंकि, वर्तमान में, कोई अन्य मॉडल नहीं है।

नोटिस modelVersionजिसमें 4.0.0 है। यह वर्तमान में केवल समर्थित POM संस्करण है, और हमेशा आवश्यक है। [ स्रोत ]

लेकिन यह जरूरी नहीं होता की जरूरत हमेशा 4.0.0 करने के लिए स्थापित किया जाना अगर वहाँ मॉडल का एक और संस्करण था। एक पीओएम को एक मॉडल का अनुपालन करना पड़ता है। बता दें कि मावेन 4 मॉडल 4.1 के साथ आता है। यदि आप 4.1 के अनुपालन के लिए अपना पोम लिखते हैं, तो यह मावेन 3 और मॉडल 4.0.0 के अनुरूप नहीं होगा।

यह एक अनिवार्य के रूप में परिभाषित किया गया है, संभवतः एक विशिष्ट XML मॉडल लागू करने के लिए जब नए मॉडल परिभाषित किए जाते हैं।


LOL मेरा ऐप 4 वर्जन पर था और 5 वर्जन को अपडेट करते समय मुझे एक एरर मिली!
च्लोए

8

मॉडल संस्करण परियोजना विवरण का वह संस्करण है जिसका POM आपके अनुरूप है। इसे शामिल करने और सेट करने की आवश्यकता है। मान 4.0.0 ने संकेत दिया कि यह संगत मेवेन 3 है।



2

modelVersion - POM के मॉडल संस्करण से युक्त। मावेन 1.x ने एक मॉडल का उपयोग किया जिसमें जड़ के तत्काल बच्चे के रूप में 3.0.0 तत्व था। मावेन 2.x / 3.x में 4.0.0 तत्व का उपयोग किया गया है।

संस्करण - परियोजना का संस्करण युक्त। यदि यह विशेषता गायब है, तो मूल तत्व मौजूद होना चाहिए और संस्करण मूल परियोजना से विरासत में मिला होगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.