2010-05-11 13 views
33

मुझे लगता है कि जेवीएम .NET Framework के समान है, सही? फिर जेआरई क्या है?जेआरई और जेवीएम के बीच क्या अंतर है?

धन्यवाद!

+1

JVM नक्शे का – RBT

+3

संभावित डुप्लिकेट .NET फ्रेमवर्क में CLR करने के लिए (http [क्या JVM, JDK, JRE और OpenJDK के बीच अंतर है?]: // stackoverflow।कॉम/प्रश्न/11547458/जेवीएम-जेडीके-जेआर-ओपनजेडके के बीच-क्या-अंतर-अंतर) – Nayuki

उत्तर

27

जेआरई वह वातावरण है जिसमें वर्चुअल मशीन चलती है।

JRE - जावा रनटाइम वातावरण

JVM - जावा वर्चुअल मशीन

JRE, कंटेनर है JVM सामग्री है।

0

Wikipedia के अनुसार:

JVM, जो 'JRE' (जावा रनटाइम एनवायरनमेंट) का उदाहरण है, कार्रवाई में जब एक जावा प्रोग्राम निष्पादित किया जाता है आता है। जब निष्पादन पूरा हो जाता है, तो यह उदाहरण कचरा एकत्र होता है। जेआईटी जेवीएम का हिस्सा है जिसका उपयोग निष्पादन समय को तेज करने के लिए किया जाता है। जेआईटी बाइट कोड के कुछ हिस्सों को संकलित करता है जिसमें एक ही समय में समान कार्यक्षमता होती है, और इसलिए संकलन के लिए आवश्यक समय की मात्रा कम हो जाती है।

3

जेआरई में जेवीएम शामिल है, जो वास्तव में बाइट कोड का अर्थ है और आपके प्रोग्राम को चलाता है। ऐसा करने के लिए JVM जेआरई द्वारा प्रदान की गई पुस्तकालयों और अन्य फ़ाइलों का उपयोग करता है।

मुझे विश्वास है कि आप कहेंगे कि जेआरई .NET Framework की तरह है, जबकि JVM .NET CLR की तरह है। यहां शायद कुछ महत्वपूर्ण अंतर हैं, हालांकि मुझे पता नहीं है।

+0

"जेआरई .NET Framework की तरह है, जबकि JVM .NET CLR की तरह है" उपयोगी उद्धरण को खींचने की आवश्यकता है । –

1

जेवीएम वह प्रक्रिया है जो जावा कोड चलाती है, और जेआरई सभी फाइलें "पर्यावरण" बनाने के लिए वितरित की जाती हैं जिसमें JVM चलता है।

61

जावा रनटाइम पर्यावरण में जेवीएम, कक्षा पुस्तकालय, और अन्य सहायक फाइलें शामिल हैं।

यह

असल JVM कार्यक्रम चलाता है इस तरह के संकलक, डिबगर, आदि के रूप में किसी भी विकास उपकरण शामिल नहीं है, और यह JRE में प्रदान की जाती वर्ग पुस्तकालयों, और अन्य

समर्थन फ़ाइलों का उपयोग करता।

JRE = JVM + जावा + रनटाइम पुस्तकालयों (util, गणित, भाषा, AWT, स्विंग आदि की तरह) वर्ग पैकेज।

यदि आप कोई जावा प्रोग्राम चलाने के लिए चाहते हैं, तो आपको सिस्टम में जेआरई स्थापित करने की आवश्यकता है।

जेआरई बॉक्स है और जेवीएम बॉक्स की सामग्री है।

सरल शब्दों JRE = JVM + rt.jar

जहां rt.jar लैंग, util, AWT, झूले, गणित आदि पुस्तकालयों या हमारे कार्यक्रम चलाने के लिए इस्तेमाल किया .class संकलित फ़ाइलें हैं में।

JVM और JRE बीच अंतर के बारे में और जानें - CLICK HERE

+3

धन्यवाद। यह स्वीकृत उत्तर से काफी बेहतर है। –

5

इस सवाल का सरल जवाब JRE है सुपर सेट JVM की।

यही है, जावा कंपाइलर (जावा) के साथ संकलित कोड बाइट-कोड (.class फ़ाइलें) उत्पन्न करता है। जेआर जेडीके का उप-समूह jvm के साथ आवश्यक पुस्तकालय शामिल है। जेवीएम बाइट-कोड चलाता है और उस कोड के लिए आवश्यक पुस्तकालयों के समर्थन के साथ मशीन पठनीय रूप में मशीन कोड उत्पन्न करता है।

देखने के लिए JVM के विन्यास पर जाएँ: C: \ Program Files \ जावा \ jre7 \ lib \ i386 \ jvm.cfg
इस फ़ाइल में है कि जावा के लिए एक विकल्प के रूप में इस्तेमाल किया जा सकता JVMs की सूची में शामिल है, javac, आदि

8

सभी JDK पहले JRE + विकास उपकरण शामिल हैं, JRE JVM + वर्ग libraries.where JVM शामिल (वर्ग लोडर & बाइट कोड सत्यापनकर्ता) और निष्पादन इंजन (दुभाषिया & JIT) व्याप्ति संकलक में परिवर्तित कर देंगे शामिल इंटरमीडिएट बाइट कोड में स्रोत कोड। जहां यह बाइट कोड निष्पादन के लिए जेवीएम को दिया जाता है। जेवीएम में क्लास लोडर बाइट कोड लोड करेगा और जेआरई द्वारा प्रदान की गई कक्षा पुस्तकालयों से जुड़ा होगा। कोड JVM में निष्पादन इंजन को दिया जाएगा जो अनियंत्रित कोड का अर्थ देता है और दोहराए गए कोड (उदाहरण के लिए लूप) को अंततः मशीन कोड (ऑब्जेक्ट कोड) में परिवर्तित करता है। फिर यह मशीन कोड को निष्पादन के लिए माइक्रोप्रोसेसर को देगा। कोई संदेह: [email protected]

+0

कोई संदेह: [email protected] अतिरिक्त –

+0

जेडीके = जेआरई + देव उपकरण = (जेवीएम + कक्षा पुस्तकालय) + देव उपकरण – mmcrae

1

JVM - जावा वर्चुअल मशीन बाइट कोड निष्पादित करने के लिए रन-टाइम वातावरण के लिए एक विनिर्देश है। जेआरई - जावा रनटाइम पर्यावरण जेवीएम जेडीके - जावा डेवलपमेंट किट का कार्यान्वयन है, यह जेआरई + विकास उपकरण है।

जेआरई सभी कक्षा पुस्तकालय जावा एप्लिकेशन का समर्थन कर सकते हैं। जब जावा एप्लिकेशन जेआरई निष्पादित करने वाला है, तो जेवीएम इंस्टेंस तैयार करेगा, जो वास्तव में जावा एप्लिकेशन चलाएगा।

0

जेआरई स्थानीय स्तर पर किसी भी जावा प्रोग्राम को निष्पादित करने के लिए एक वातावरण है।

जेवीएम वह है जहां यह बाइटकोड को मशीन विशिष्ट कोड में परिवर्तित करने के लिए ज़िम्मेदार है और जावा प्रोग्राम लिखने-एक बार-कहीं भी चलाता है।

1

आम आदमी शब्दों में: -

JDK = JRE + विकास/डीबगिंग टूल है, जहां JDK, जावा के साथ काम करने का निर्माण करने से हमारा पूरा पैकेज है दूसरी ओर it.On चल तक संकलन JRE बस चलाने की है कोड (बाइट कोड)।

नोट: - चाहे हम जेडीके या जेआरई स्थापित कर रहे हों, JVM दोनों पैकेजों के साथ बंडल किया जाएगा और जेवीएम वह हिस्सा है जहां जेआईटी कंपाइलर बाइट कोड को मशीन विशिष्ट कोड में परिवर्तित करता है।

JVM is Java Virtual Machine -- the JVM actually runs Java bytecode. 
JDK is Java Developer Kit -- the JDK is what you need to compile Java source code. 
JRE is Java Runtime Environment -- is what you need to run a Java program and contains a JVM, among other things. 
संबंधित मुद्दे