2009-04-20 13 views
5

के माध्यम से JAVA_HOME सेट करने के बीच कोई अंतर है यह वास्तविक नोब प्रश्न है।क्या सीएमडी लाइन या जीयूआई

जब मैं कमांड लाइन अंतरफलक मैं सेट का इस्तेमाल किया का उपयोग कर JAVA_HOME की स्थापना JAVA_HOME = C: \ Program Files \ जावा \ jdk1.6.0_13

हालांकि जब मैं सिस्टम> उन्नत से JAVA_HOME चर खोलने> पर्यावरण चर परिवर्तन दिखाई नहीं दे रहा है। क्या ये दो अलग-अलग सेटिंग्स हैं?

हर बार जब मैं एक नया जेडीके स्थापित करता हूं और कभी पूरी तरह से समझ में नहीं आता है कि दोनों अलग क्यों दिखते हैं।

उत्तर

7

कमांड लाइन पर सेट किया गया वेरिएबल है कमांड खोल और यह शुरू होने वाली किसी भी अन्य प्रक्रियाओं के लिए है। जब आप इसे सिस्टम/एडवांस्ड/एनवायरनमेंट वैरिएबल से सेट करते हैं तो यह आपके द्वारा शुरू की जाने वाली किसी भी अन्य प्रक्रिया को प्रभावित करता है, जिसमें कमांड खोल भी शामिल है। आप इसे कहां सेट करते हैं, इस पर निर्भर करते हुए, यह उसी उपयोगकर्ता या किसी भी अन्य उपयोग के लिए उपलब्ध होगा जो लॉग इन करता है।

+1

यह केवल एक्सप्लोरर द्वारा शुरू की गई नई प्रक्रियाओं को प्रभावित करता है (जहां एनवी परिवर्तन हुआ)। कुछ भी पहले से चल रहा है जो नई प्रक्रियाओं (लॉन्च, आदि) लॉन्च करता है उन्हें पुराने वातावरण के साथ लॉन्च करेगा। – Herms

+0

@ हर्म्स। + 1। तुम सही हो। वास्तव में, उस कमांड खोल से शुरू की गई किसी भी प्रक्रिया को भी नया मूल्य नहीं मिलेगा। –

3

कमांड लाइन द्वारा सेट किया गया JAVA_HOME केवल शेल के उस सत्र के लिए सेट है।

3

माता-पिता प्रक्रिया में किए गए परिवर्तन केवल नव निर्मित बच्चों के लिए प्रचार करते हैं; एक नया कमांड प्रॉम्प्ट खोलने और वहां मूल्य का निरीक्षण करने का प्रयास करें।

2

दूसरों को क्या कहा ... :-)

मुझे लगता है कि संवाद में चर सेट करने के बाद भी, प्रक्रियाओं पहले से ही चल रहे हैं (सामान्य रूप में) जोड़ना होगा परिवर्तन के बारे में पता नहीं: जैसे। एक कमांड प्रॉम्प्ट विंडो अभी भी पुराना मान प्रदर्शित करेगी। परिवर्तन देखने के लिए आपको एक और विंडो शुरू करनी है।
कुछ (दुर्लभ) मामलों में, आपको लॉग इन करने और परिवर्तन को सत्यापित करने के लिए वापस लॉग इन करने की आवश्यकता हो सकती है (मैंने हाल ही में देखा है)।

संबंधित मुद्दे