नोट: ये समाधान जावा के विभिन्न संस्करणों सहित जावा 8 और नए जावा 13, और सूचीबद्ध संस्करण प्रबंधकों द्वारा कवर किए गए किसी अन्य पिछले जावा संस्करण के लिए काम करते हैं। इसमें ओपन JDK, Oracle, IBM, Azul, Amazon Correto, Graal आदि से वैकल्पिक JDK शामिल हैं। जावा 7, जावा 8, जावा 9, जावा 10, जावा 11, जावा 12 और जावा 13 के साथ आसानी से काम करें!
आपके पास इंस्टॉलेशन करने के साथ-साथ JDK स्विचिंग को मैनेज करने के कुछ विकल्प हैं। स्थापना Homebrew, SDKMAN , Jabba या एक मैनुअल इंस्टॉल द्वारा की जा सकती है । JEnv , SDKMAN , Jabba , या मैन्युअल रूप से सेटिंग द्वारा स्विच किया जा सकता है JAVA_HOME
। इन सभी का वर्णन नीचे किया गया है।
स्थापना
सबसे पहले, Homebrew, SDKMAN या tar.gz फ़ाइल की मैन्युअल स्थापना सहित जो भी विधि पसंद करते हैं उसका उपयोग करके जावा स्थापित करें। मैन्युअल इंस्टॉल के फायदे यह है कि JDK का स्थान मैक OSX के लिए एक मानकीकृत स्थान पर रखा जा सकता है।
SDKMAN के साथ इंस्टॉल करें
यह एक सरल मॉडल है जिसमें यह संस्थापन और संस्करण स्विचन दोनों को संभालता है, एक चेतावनी के साथ कि यह JDK को एक गैर-मानक निर्देशिका में स्थापित करता है।
< एसडीकेमैन के साथ "इंस्टॉल और स्विचिंग संस्करण" > नीचे देखें
Jabba का उपयोग कर स्थापित करें
यह भी एक सरल मॉडल है जिसमें इंस्टॉलेशन और वर्जन स्विचिंग दोनों को एक ही टूल द्वारा नियंत्रित किया जाता है। स्थापना एक गैर-मानक निर्देशिका के लिए बनाई गई हैं।
< नीचे "Jabba के साथ संस्करण स्थापित और स्विच करना" > देखें
OpenJDK डाउनलोड पृष्ठ से मैन्युअल रूप से स्थापित करें:
डाउनलोड OpenJDK मैक OSX के लिए से http://jdk.java.net/ (उदाहरण के लिए जावा 13 )
OpenJDK टार को अनारक्षित करें, और परिणामस्वरूप फ़ोल्डर (यानी jdk-13.jdk
) को अपने /Library/Java/JavaVirtualMachines/
फ़ोल्डर में रखें क्योंकि यह JDK इंस्टॉल का मानक और अपेक्षित स्थान है। आप वास्तविकता में कहीं भी स्थापित कर सकते हैं।
Homebrew के साथ स्थापित करें
3 अक्टूबर, 2018 से पहले होमब्रे कॉस्क में उपलब्ध जावा का संस्करण वास्तव में ओरेकल जेवीएम था। हालाँकि, अब इसे OpenJDK में अपडेट कर दिया गया है। होमब्रे को अपडेट करना सुनिश्चित करें और फिर आप इंस्टॉल के लिए उपलब्ध नवीनतम संस्करण देखेंगे।
यदि आपने पहले से होमब्रेव स्थापित नहीं किया है। सुनिश्चित करें कि यह अपडेट किया गया है:
brew update
यदि आप पहले से ही नहीं है (या आप चरण # 3 के साथ पुराने जावा संस्करण नहीं देख रहे हैं), तो पीप टैप को जोड़ें:
brew tap homebrew/cask-versions
और AdoptOpenJDK संस्करणों के लिए, उस टैप को जोड़ें:
brew tap adoptopenjdk/openjdk
ये पीक अक्सर अपने जावा संस्करण बदलते हैं, और अतिरिक्त जावा संस्करणों के साथ अन्य टैप हो सकते हैं।
इंस्टॉल करने योग्य संस्करणों के लिए देखें:
brew search java
या AdoptOpenJDK संस्करणों के लिए:
brew search jdk
इंस्टॉल किए जाने वाले संस्करण पर विवरण देखें:
brew cask info java
या AdoptOpenJDK संस्करण के लिए:
brew cask info adoptopenjdk
JDK का एक विशिष्ट संस्करण स्थापित करें java11
, जैसे adoptopenjdk8
, या सिर्फ java
या adoptopenjdk
वर्तमान के लिए। उदाहरण के लिए:
brew cask install java
आप पुराने संस्करणों के लिए पूरी तरह से योग्य पथ का उपयोग कर सकते हैं:
brew cask install homebrew/cask-versions/java11
और इन्हें /Library/Java/JavaVirtualMachines/
मैक ओएसएक्स पर अपेक्षित पारंपरिक स्थान में स्थापित किया जाएगा ।
अन्य स्थापना विकल्प:
OpenJDK के कुछ अन्य स्वाद हैं:
OpenJDK के अज़ुल सिस्टम्स जावा ज़ुलु प्रमाणित बिल्ड उनकी साइट पर दिए गए निर्देशों का पालन करके स्थापित किया जा सकता है।
ज़ुलु® OpenJDK का एक प्रमाणित निर्माण है जो जावा एसई मानक के साथ पूरी तरह से अनुरूप है। ज़ुलु 100% खुला स्रोत है और स्वतंत्र रूप से डाउनलोड करने योग्य है। अब जावा डेवलपर्स, सिस्टम एडमिनिस्ट्रेटर और एंड यूजर्स तैनाती के लचीलेपन के साथ ओपन सोर्स जावा का पूरा लाभ उठा सकते हैं और अपग्रेड टाइमिंग पर नियंत्रण कर सकते हैं।
Amazon Correto OpenJDK बिल्ड में संस्करण 8 या संस्करण 11 (अन्य संस्करण आ रहे हैं) के लिए एक इंस्टॉलेशन पैकेज का उपयोग करना आसान है, और/Library/Java/JavaVirtualMachines/
मैक ओएसएक्स परमानकनिर्देशिका मेंस्थापित होता है।
Amazon Corretto ओपन जावा डेवलपमेंट किट (OpenJDK) का एक नो-कॉस्ट, मल्टीप्लायर, प्रोडक्शन-रेडी डिस्ट्रीब्यूशन है। Corretto दीर्घकालिक समर्थन के साथ आता है जिसमें प्रदर्शन संवर्द्धन और सुरक्षा सुधार शामिल होंगे। अमेज़न हजारों उत्पादन सेवाओं पर आंतरिक रूप से Corretto चलाता है और Corretto जावा एसई मानक के साथ संगत के रूप में प्रमाणित है। Corretto के साथ, आप लिनक्स, विंडोज और macOS सहित लोकप्रिय ऑपरेटिंग सिस्टम पर जावा अनुप्रयोगों को विकसित और चला सकते हैं।
मेरा JDK कहाँ है?!?!
डिफ़ॉल्ट सिस्टम स्थानों पर पहले से स्थापित जावा JDK के स्थानों को खोजने के लिए, उपयोग करें:
/usr/libexec/java_home -V
मिलान करने वाली जावा वर्चुअल मशीनें (6):
13, x86_64: "OpenJDK 13" /Library/Java/JavaVirtualMachines/openjdk-13.jdk/Contents/Hont 12, x86_64: "OpenJDK 12" / लाइब्रेरी / Java / JavaVirtualMachines / jdkkines .jdk / Contents / Home
11, x86_64: "Java SE 11" /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
10.0.2, xx_64: "Java SE 10.0.2" / लाइब्रेरी / जावा / JavaVirtualMachines /jdk-10.0.2.jdk/Contents/Home
9, x86_64: "Java SE 9" /Library/Java/JavaVirtualMachines/jdk-9.jdk-Contents/Home
1.8.0_144, x86_64: "Java SE 8" / Library /Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
तुम भी एक विशिष्ट जावा संस्करण का उपयोग कर के स्थान की रिपोर्ट कर सकते हैं -v
। उदाहरण के लिए जावा 13:
/usr/libexec/java_home -v 13
/Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home
स्थापित JDK का स्थान जानना भी JEnv जैसे उपकरणों का उपयोग करते समय, या SDKMAN में एक स्थानीय संस्थापन को जोड़ने, या जबा में एक सिस्टम JDK को जोड़ने के लिए उपयोगी है - और आपको यह जानना होगा कि उन्हें कहाँ खोजना है।
यदि आपको JDK को अन्य उपकरणों द्वारा स्थापित करने की आवश्यकता है, तो इन स्थानों की जाँच करें:
- SDKMAN को स्थापित करता है
~/.sdkman/candidates/java/
- जेबा को स्थापित करता है
~/.jabba/jdk
मैन्युअल रूप से स्विचिंग संस्करण
जावा निष्पादन योग्य एक आवरण है जो JDK को कॉन्फ़िगर करने के लिए जो भी उपयोग करेगा JAVA_HOME
, आप बदल सकते हैं ताकि JDK उपयोग में हो।
उदाहरण के लिए, यदि आपने JDK 13 को स्थापित किया है या नहीं /Library/Java/JavaVirtualMachines/jdk-13.jdk
तो अगर यह उच्चतम संस्करण संख्या है तो यह पहले से ही डिफ़ॉल्ट होना चाहिए, यदि आप बस सेट नहीं कर सकते हैं:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home
और अब जो भी Java एक्जीक्यूटेबल रास्ते में है वह इसे देखेगा और सही JDK का उपयोग करेगा।
/usr/libexec/java_home
पहले वर्णित के रूप में उपयोगिता का उपयोग करने से आपको अलग-अलग जेडीके प्रतिष्ठानों के स्थानों की पहचान करके जावा संस्करण बदलने के लिए उपनाम बनाने या कमांड चलाने में मदद मिलती है। उदाहरण के लिए, आपके लिए शेल उपनाम बनाना .profile
या आपके .bash_profile
लिए बदलना JAVA_HOME
:
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_9_HOME=$(/usr/libexec/java_home -v9)
export JAVA_10_HOME=$(/usr/libexec/java_home -v10)
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)
export JAVA_12_HOME=$(/usr/libexec/java_home -v12)
export JAVA_13_HOME=$(/usr/libexec/java_home -v13)
alias java8='export JAVA_HOME=$JAVA_8_HOME'
alias java9='export JAVA_HOME=$JAVA_9_HOME'
alias java10='export JAVA_HOME=$JAVA_10_HOME'
alias java11='export JAVA_HOME=$JAVA_11_HOME'
alias java12='export JAVA_HOME=$JAVA_12_HOME'
alias java13='export JAVA_HOME=$JAVA_13_HOME'
# default to Java 13
java13
फिर संस्करण बदलने के लिए, बस उपनाम का उपयोग करें।
java8
java -version
जावा संस्करण "1.8.0_144"
बेशक, JAVA_HOME
मैन्युअल रूप से सेटिंग भी काम करती है!
JEnv के साथ संस्करण बदलना
JEnv को उम्मीद है कि जावा JDK पहले से ही मशीन पर मौजूद है और किसी भी स्थान पर हो सकता है। आमतौर पर आप जावा JDK की स्थापना पाएंगे/Library/Java/JavaVirtualMachines/
। JEnv जावा के वैश्विक संस्करण को सेट करने की अनुमति देता है, वर्तमान शेल के लिए एक, और प्रति-निर्देशिका स्थानीय संस्करण जो कुछ परियोजनाओं को दूसरों की तुलना में विभिन्न संस्करणों की आवश्यकता होने पर काम में आता है।
JEnv स्थापित करें यदि आप पहले से ही नहीं है, तो साइट http://www.jenv.be/ पर निर्देश स्थापित करें या होमब्रे का उपयोग करें।
किसी भी जावा संस्करण को JEnv में जोड़ें ( निर्देशिका को समायोजित करें यदि आपने इसे कहीं और रखा है ):
jenv add /Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home
इस आदेश का उपयोग करके अपना वैश्विक संस्करण सेट करें:
jenv global 13
आप jenv add
समान तरीके से अन्य मौजूदा संस्करणों को भी जोड़ सकते हैं , और जो उपलब्ध हैं उन्हें सूचीबद्ध कर सकते हैं। उदाहरण के लिए जावा 8:
jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
jenv versions
अधिक आदेशों के लिए JEnv डॉक्स देखें । अब आप किसी भी जावा संस्करण (Oracle, OpenJDK, अन्य) के बीच किसी भी समय या तो पूरे सिस्टम के लिए, शेल या स्थानीय निर्देशिका के लिए स्विच कर सकते हैं।
JAVA_HOME
JEnv का उपयोग करते समय प्रबंधित करने में सहायता के लिए आप अपने लिए ऐसा करने के लिए निर्यात प्लगइन जोड़ सकते हैं ।
$ jenv enable-plugin export
You may restart your session to activate jenv export plugin echo export plugin activated
निर्यात प्लगइन समायोजित नहीं हो सकता है JAVA_HOME
यदि यह पहले से ही सेट है, तो आपको अपने प्रोफ़ाइल में इस चर को साफ़ करने की आवश्यकता हो सकती है ताकि इसे JEnv द्वारा प्रबंधित किया जा सके।
आप jenv exec <command> <parms...>
एकल कमांड चलाने के लिए JAVA_HOME
और PATH
उस एक कमांड के लिए सही तरीके से सेट करने के लिए उपयोग कर सकते हैं , जिसमें एक और शेल खोलना शामिल हो सकता है।
SDKMAN के साथ संस्करण स्थापित करना और बदलना
SDKMAN थोड़ा अलग है और इंस्टॉल और स्विचिंग दोनों को संभालता है। SDKMAN भी स्थापित JDK को अपनी निर्देशिका ट्री में रखता है, जो आमतौर पर है~/.sdkman/candidates/java
। SDKMAN वैश्विक डिफ़ॉल्ट संस्करण और वर्तमान शेल के लिए विशिष्ट संस्करण सेट करने की अनुमति देता है।
Https://sdkman.io/install से SDKMAN स्थापित करें
यह सुनिश्चित करने के लिए उपलब्ध जावा संस्करणों की सूची बनाएं कि आपको संस्करण आईडी पता है
sdk list java
उन संस्करणों में से एक को स्थापित करें, उदाहरण के लिए, जावा 13:
sdk install java 13.0.0-open
13 को डिफ़ॉल्ट संस्करण बनाएं:
sdk default java 13.0.0-open
या सत्र के लिए 13 पर स्विच करें:
sdk use java 13.0.0-open
जब आप सूची कमांड का उपयोग करके इंस्टॉलेशन के लिए उपलब्ध संस्करणों को सूचीबद्ध करते हैं, तो आपको जावा के विभिन्न प्रकार के वितरण दिखाई देंगे:
sdk list java
और अतिरिक्त संस्करण स्थापित करें, जैसे कि JDK 8:
sdk install java 8.0.181-oracle
SDKMAN पहले से स्थापित मौजूदा संस्करणों के साथ काम कर सकता है। बस अपने स्वयं के संस्करण लेबल और JDK का स्थान देते हुए एक स्थानीय इंस्टॉल करें:
sdk install java my-local-13 /Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home
और इसे स्वतंत्र रूप से उपयोग करें:
sdk use java my-local-13
अधिक जानकारी उपलब्ध है SDKMAN उपयोग मार्गदर्शिका के साथ-साथ अन्य एसडीके है यह स्थापित करने और प्रबंधन कर सकते हैं।
जैसे ही आप संस्करण बदलते हैं SDKMAN आपके PATH
और आपके JAVA_HOME
लिए स्वचालित रूप से प्रबंधन करेगा ।
Jabba के साथ संस्करण स्थापित करना और बदलना
Jabba इनस्टॉल और स्विचिंग दोनों को संभालती है। Jabba स्थापित JDK को अपनी निर्देशिका ट्री में भी रखता है, जो कि आम तौर पर होता है~/.jabba/jdk
।
होम पेज पर दिए गए निर्देशों का पालन करते हुए Jabba स्थापित करें ।
उपलब्ध सूची JDK की
jabba ls-remote
जावा JDK 12 स्थापित करें
jabba install openjdk@1.12.0
इसका इस्तेमाल करें:
jabba use openjdk@1.12.0
आप अन्य नामों को भी उपनाम कर सकते हैं, मौजूदा JDK के पहले से स्थापित लिंक से, और दिलचस्प JDK जैसे कि GraalVM, Adopt JDK, IBM JDK, और बहुत कुछ का मिश्रण पा सकते हैं। पूरा उपयोग गाइड होम पेज पर भी उपलब्ध है।
जब आप संस्करण बदलते हैं तो जब्बा स्वचालित रूप से आपके लिए PATH
और आपके JAVA_HOME
लिए प्रबंधन करेगी ।