2010-12-02 16 views
7

में जेएवीए_एचओएमई सिस्टम वैरिएबल बदलने के लिए स्क्रिप्ट जेडीके 1.5 के खिलाफ मेरा अधिकांश काम करता है - लेकिन कभी-कभी मुझे 1.6 में बदलना पड़ता है। जब भी मुझे एक या दूसरे के लिए विशिष्ट परियोजना पर काम करने की ज़रूरत होती है (और नहीं, ग्रहण इन परिदृश्यों में अच्छी तरह से नहीं खेलता है - मुझे भरोसा है - यह मेरे 'JAVA_HOME' सिस्टम वैरिएबल को मैन्युअल रूप से जाना और बदलना थोड़ा दर्दनाक है। मैंने कोशिश की है।)विंडोज़

मैं एक रजिस्ट्री स्क्रिप्ट या विंडोज शैल स्क्रिप्ट की तलाश में हूं या उस मामले के लिए किसी भी माध्यम से जिसके द्वारा मैं इस सिस्टम वैरिएबल को "टॉगल" कर सकता हूं जो कि चलाने में आसान है।

मैंने 'सेट' कमांड से गड़बड़ कर दी है, लेकिन यह केवल उस विशेष कमांड इंस्टेंस के लिए चर सेट करता है - वैश्विक स्तर पर नहीं।

अग्रिम धन्यवाद।

संपादित करें # 1: सलाह के अंक:

  • उपयोग अपने पथ चर में JAVA_HOME चर के रूप में अच्छी तरह से, कि जिस तरह से आप केवल JAVA_HOME (जो कई परियोजनाओं में इस्तेमाल किया जाता है बदलने के लिए वैसे भी [मेवेन, चींटी, आदि])
  • आसान उपयोग के लिए दो बैच स्क्रिप्ट्स में कमांड लिखें
  • जब आप परिवर्तन करते हैं तो विंडोज कमांड सत्र तुरंत इसे प्रतिबिंबित नहीं करेगा। आपको इसे बंद करना और फिर से खोलना होगा।
+0

3-डी: एक ही आप अपनी स्क्रिप्ट में दोनों "सेट" और "setx" का उपयोग कर सकते इस प्रकार की स्थापना सक्रिय उपयोगकर्ता सत्र के लिए पर्यावरण चर और वैश्विक स्तर पर एक ही समय में। –

+0

@ बार्ति - आपकी मदद के लिए धन्यवाद, क्योंकि मेरे परिदृश्य सेटक्स पूरी तरह से काम करता है। धन्यवाद! – javamonkey79

उत्तर

16

आप उस उद्देश्य

के लिए setx इस्तेमाल कर सकते हैं तो जैसा:

setx /M JAVA_HOME "C:\Program Files (x86)\Java\jdk1.6.0_17" 
+0

हाँ, मैंने अभी उस आदेश को देखा - क्या आपके पास अर्ध-पूर्ण समाधान है? (+1) – javamonkey79

+0

'सेटक्स जैवा_एचओएमई "सी: \ पथ" '(एचकेसीयू) या' सेटक्स जावा 'एचओएमई" सी: \ पथ "-एम' (एचकेएलएम) –

+0

कूल, यह'/एम 'था जिसे मैं याद कर रहा था। धन्यवाद! – javamonkey79