Maven SNAPSHOT क्या है और Java प्रोजेक्ट्स में इसकी आवश्यकता क्यों है?
सभी को नमस्ते! मैं Java और Maven में नया हूँ, एक छोटे प्रोजेक्ट पर काम कर रहा हूँ जिसमें मैं एक external library का उपयोग कर रहा हूँ, जिसे हम समानांतर रूप से विकसित भी कर रहे हैं। pom.xml फ़ाइल में मैंने `1.0.0-SNAPSHOT` version के साथ dependency specified की है, लेकिन मेरे team lead ने कहा कि यह production के लिए नहीं, केवल development के लिए है।
मैं सामान्य version (जैसे `1.0.0`) और `SNAPSHOT` के बीच का अंतर पूरी तरह से नहीं समझ पा रहा हूँ। दोनों ही version की तरह लगते हैं। जब मैं `mvn clean install` चलाता हूँ, तो Maven कभी-कभी error देता है कि वह `1.0.0-SNAPSHOT` को locally नहीं ढूँढ पा रहा है, हालाँकि मैंने अभी library को build किया है। और कभी-कभी, इसके विपरीत, वह पुराना version खींच लेता है, भले ही मैंने बदलाव कर दिए हों।
कृपया समझाएँ कि Maven SNAPSHOT सरल शब्दों में क्या है? इसे क्यों बनाया गया? और इसके साथ सही तरीके से कैसे काम करें ताकि versions में confusion न हो? विशेष रूप से