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