क्लासपाथ ( विकिपीडिया से ):
जावा प्रोग्राम को निष्पादित करते समय, क्लासिक डायनेमिक लोडिंग व्यवहार के समान, जावा वर्चुअल मशीन लेज़िली को ढूंढती है और लोड करती है (यह एक क्लास के बाइटकोड को तभी लोड करती है जब क्लास पहली बार उपयोग की जाती है)। Classpath जावा को बताता है कि इन कक्षाओं को परिभाषित करने वाली फ़ाइलों के लिए फ़ाइल सिस्टम में कहाँ देखना है।
वर्चुअल मशीन इस क्रम में कक्षाओं को खोजती और लोड करती है:
बूटस्ट्रैप कक्षाएं: वे कक्षाएं जो जावा प्लेटफ़ॉर्म के लिए मूलभूत हैं (जिसमें जावा क्लास लाइब्रेरी की सार्वजनिक कक्षाएं शामिल हैं, और निजी कक्षाएं जो इस लाइब्रेरी को कार्यात्मक बनाने के लिए आवश्यक हैं)।
एक्सटेंशन क्लासेस: पैकेज जो JRE या JDK के एक्सटेंशन डायरेक्टरी में हैं,
jre / lib / ext / उपयोगकर्ता-परिभाषित पैकेज और लाइब्रेरी
डिफ़ॉल्ट रूप से केवल JDK मानक API और एक्सटेंशन पैकेजों के पैकेज सेट किए बिना सुलभ हैं जहां उन्हें खोजना है। सभी उपयोगकर्ता-निर्धारित पैकेज और लाइब्रेरी के लिए पथ को कमांड-लाइन (या कक्षाओं के साथ जार फ़ाइल से संबंधित घोषणापत्र में) सेट किया जाना चाहिए।
सीधे शब्दों में कहें - जब आपका प्रोग्राम चल रहा होता है, तो JVM केवल आवश्यकतानुसार कक्षाओं को लोड करता है। जब एक वर्ग की आवश्यकता होती है, तो JVM क्लासपाथ पर निर्भर करेगा कि उसे पता चल जाए कि कहां से .class
फाइल को लोड करना है (यानी " फाइलें)।"
दूसरी ओर, पथ का निर्माण , आमतौर पर एक आईडीई द्वारा किया जाता है, जैसे कि एक्लिप्स, यह जानने के लिए कि परियोजना के स्रोत कोड को संकलित करने के लिए आवश्यक अतिरिक्त पुस्तकालयों की तलाश कहाँ करें। रनटाइम के दौरान बिल्ड पथ का उपयोग नहीं किया जाता है।