JAVA_HOME
ओरेकल के जावा को इंगित करने के लिए मैं उबंटू में मूल्य कैसे बदलूं ?
यह इंगित करना चाहिए java-6-sun
या java-6-sun-1.6.0.24
?
JAVA_HOME
ओरेकल के जावा को इंगित करने के लिए मैं उबंटू में मूल्य कैसे बदलूं ?
यह इंगित करना चाहिए java-6-sun
या java-6-sun-1.6.0.24
?
जवाबों:
मैंने लाइन लगाई:
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
मेरी ~/.bashrc
फाइल में।
/usr/lib/jvm/java7-oracle
की ओर इशारा करते हुए एक प्रतीकात्मक लिंक होना चाहिए /usr/lib/jvm/java-7-oracle-[version number here]
।
यह एक प्रतीकात्मक लिंक होने का कारण है कि अगर JVM का नया संस्करण है, तो आपको अपनी .bashrc
फ़ाइल को अपडेट करने की आवश्यकता नहीं है , यह स्वचालित रूप से नए संस्करण को इंगित करना चाहिए।
यदि आप JAVA_HOME
विश्व स्तर पर पर्यावरण चर सेट करना चाहते हैं और सिस्टम स्तर पर इसका उपयोग /etc/environment
फ़ाइल में सेट करना चाहिए ।
oracle-java7-set-default
पैकेज क्या करता है।
यदि आप इसे विश्व स्तर पर और सिस्टम स्तर पर बदलना चाहते हैं;
में
/etc/environment
इस पंक्ति को जोड़ें:
JAVA_HOME=/usr/lib/jvm/java-7-oracle
$JAVA_HOME
इस तरह से इस्तेमाल किए जाने पर हल नहीं होता PATH=$JAVA_HOME/bin
, पुनः आरंभ करने की कोशिश की, कोई प्रभाव नहीं। क्या मुझे इस फ़ाइल में या मेरी प्रोफ़ाइल पर export
या set
JAVA_HOME
तो है?
ओरेकल के जावा एसई डेवलपमेंट किट को सिस्टम डिफॉल्ट जावा के रूप में सेट करने के लिए बस यहां से नवीनतम जावा एसई डेवलपमेंट किट डाउनलोड करें फिर एक निर्देशिका बनाएं जो आप अपने फाइल सिस्टम में पसंद करते /usr/java
हैं उदाहरण के लिए अब उस निर्देशिका में आपके द्वारा डाउनलोड की गई फ़ाइलों को निकालें।
$ sudo tar xvzf jdk-8u5-linux-i586.tar.gz -C /usr/java
अब अपने JAVA_HOME
पर्यावरण चर सेट करने के लिए :
$ JAVA_HOME=/usr/java/jdk1.8.0_05/
$ sudo update-alternatives --install /usr/bin/java java ${JAVA_HOME%*/}/bin/java 20000
$ sudo update-alternatives --install /usr/bin/javac javac ${JAVA_HOME%*/}/bin/javac 20000
सुनिश्चित करें कि Oracle का जावा डिफ़ॉल्ट जावा के रूप में सेट है:
$ update-alternatives --config java
आपको ऐसा कुछ मिलता है:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /opt/java/jdk1.8.0_05/bin/java 20000 auto mode
1 /opt/java/jdk1.8.0_05/bin/java 20000 manual mode
2 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 manual mode
Press enter to keep the current choice[*], or type selection number:
बाईं ओर संख्याओं से पहले तारांकन पर ध्यान दें और यदि सही सेट नहीं है, तो उसकी संख्या टाइप करके और एंटर दबाकर सही चुनें। अब अपने जावा का परीक्षण करें:
$ java -version
अगर आपको निम्नलिखित कुछ मिलता है, तो आप जाने के लिए अच्छे हैं:
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Server VM (build 25.5-b02, mixed mode)
यह भी ध्यान दें कि आपको रूट अनुमति की आवश्यकता हो सकती है या ऐसा करने में सक्षम होने के लिए सुडोर्स समूह में होना चाहिए। मैंने ubuntu 12.04 और Debian wheezy दोनों पर इस समाधान का परीक्षण किया है और यह उन दोनों में काम करता है।
यदि आप चाहते हैं कि यह वातावरण चर सभी उपयोगकर्ताओं के लिए उपलब्ध हो और सिस्टम शुरू होने पर आप निम्नलिखित को /etc/profile.d/java.sh में जोड़ सकते हैं (यदि आवश्यक हो तो इसे बनाएं):
export JDK_HOME=/usr/lib/jvm/java-7-oracle
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
फिर एक टर्मिनल रन में:
sudo chmod +x /etc/profile.d/java.sh
source /etc/profile.d/java.sh
मेरा दूसरा सवाल है - क्या यह जावा-6-सन या जावा-6-सन-1.6.0.24 की ओर इशारा करता है?
यह हमेशा के java-7-oracle
रूप में इंगित करना चाहिए कि नवीनतम स्थापित एक के प्रति सहानुभूति है (आप Ubuntu रिपॉजिटरी से जावा स्थापित करते हैं और अब oracle.com पर उपलब्ध डाउनलोड से)।
जावा ६
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-amd64
या जावा ava
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64
यदि आप किसी भी प्रकार का विकास कर रहे हैं तो आपको JDK (Java Development Kit) को इंगित करना होगा। अन्यथा, आप JRE (Java रनटाइम एनवायरनमेंट) को इंगित कर सकते हैं।
JDK में वह सब कुछ है जो JRE में है और बहुत कुछ। यदि आप सिर्फ जावा प्रोग्राम को अंजाम दे रहे हैं, तो आप JRE या JDK को इंगित कर सकते हैं।
आपको अपने JAVA_HOME
द्वारा उपयोग किए जा रहे वर्तमान जावा के आधार पर सेट करना चाहिए ।
readlink
वर्तमान जावा के लिए एक प्रतीकात्मक लिंक का मूल्य प्रिंट करेगा और sed
इसे JRE निर्देशिका में समायोजित करेगा:
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
यदि आप JDA को JAVA_HOME सेट करना चाहते हैं, तो आपको एक फ़ोल्डर और ऊपर जाना चाहिए:
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:jre/bin/java::")
यदि आप कई JDK स्थापित होने पर जावा के विशिष्ट संस्करण का उपयोग करना चाहते हैं, तो बस JAVA_HOME सेट करने से काम नहीं हो सकता है।
आपको sudo update-alternatives --config java
डिफ़ॉल्ट जावा सेट करने के लिए उपयोग करने की आवश्यकता है ।
Https://askubuntu.com/questions/121654/how-to-set-default-java-version का संदर्भ लें ।
देखें इस ; Daud
sudo update-java-alternatives --list
नाम और निर्देशिका द्वारा मशीन पर सभी जावा संस्थापनों को सूचीबद्ध करने के लिए, और फिर चलाएं
sudo update-java-alternatives --set [JDK/JRE name e.g. java-8-oracle]
कौन सा JRE / JDK उपयोग करना है, यह चुनने के लिए।
यदि आप प्रत्येक जावा कार्य के लिए अलग-अलग JDK / JRE का उपयोग करना चाहते हैं, तो आप एक समय में एक जावा निष्पादन योग्य को कॉन्फ़िगर करने के लिए अद्यतन-विकल्प चला सकते हैं; तुम दौड़ सकते हो
sudo update-alternatives --config java[Tab]
जावा कमांड को देखने के लिए जिसे कॉन्फ़िगर किया जा सकता है (जावा, जावा, जावा, जावा, आदि)। और तब
sudo update-alternatives --config [javac|java|javadoc|etc.]
जावा कार्य / कमांड को एक विशेष JDK / JRE से संबद्ध करेगा।
आपको कुछ अनुप्रयोगों के लिए JAVA_HOME सेट करने की आवश्यकता हो सकती है: इस उत्तर से आप उपयोग कर सकते हैं
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
JRE के लिए, या
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:jre/bin/java::")
JDKs के लिए।
java -XshowSettings 2>&1 | grep -e 'java.home' | awk '{print "JAVA_HOME="$3}' | sed "s/\/jre//g" >> /etc/environment