MacOS Mojave (10.14) से लेकर Lion (10.7) तक JAVA_HOME कहां है?


559

जावा macOS के नवीनतम संस्करणों पर एक वैकल्पिक पैकेज है।

फिर भी एक बार स्थापित होने के बाद ऐसा प्रतीत होता है कि JAVA_HOME पर्यावरण चर ठीक से सेट नहीं है



मैक सिएरा पर मैं / लाइब्रेरी / जावा / JavaVirtualMachines जो jdk और सिस्टम वरीयताएँ है> जावा इन 2 के बीच क्या अलग है?
विक्रमवी

अलग-अलग सवाल, धन्यवाद
ओलिवियर रेफलो

अपने जावा इंस्टॉलेशन को ठीक से पूरा न करने की संभावना को कम मत समझिए। यदि नीचे दिए गए उत्कृष्ट सुझावों में से कोई भी काम नहीं करता है, तो [पुनः] स्थापित करने का प्रयास करें!
MarkHu

जवाबों:


1059

साथ जावा वैकल्पिक पैकेज या ओरेकल JDK स्थापित है, आपके लिए निम्न पंक्तियों में से एक को जोड़ने ~ / .bash_profile फ़ाइल वातावरण चर तदनुसार सेट हो जाएगा।

export JAVA_HOME="$(/usr/libexec/java_home -v 1.6)"
or
export JAVA_HOME="$(/usr/libexec/java_home -v 1.7)"
or
export JAVA_HOME="$(/usr/libexec/java_home -v 1.8)"

अपडेट: जोड़ा -v झंडा Jilles वैन Gurp प्रतिक्रिया पर आधारित है ।


1
जानकार अच्छा लगा। मेरा कहना है कि लायन के लिए फीचर लिस्ट से बहुत रोमांचित नहीं होना चाहिए। वहाँ मेरे उपयोग के लिए संवर्द्धन के तरीके में बहुत कुछ नहीं लगता ...
prodigitalson

1
@ ओलिवर: ईडब्ल्यूए :-) थॉट्स शायद सबसे कम उपयोगी चीज है ... मेरे पास हमेशा कई खिड़कियां खुली हैं और स्क्रीन पर व्यवस्थित हैं इसलिए मैं एक साथ कई चीजें देख सकता हूं ... आमतौर पर हर स्थान पर एक अलग लेआउट।
प्रोडिजिटल्सन

11
यह मेरे लिए काम नहीं किया। /System/Library/Frameworks/JavaVM.framework/Home ने काम किया।
चॉस्तोरी

7
Maverick पर भी काम करता है!
cbare

3
जावा 11 और हाई सिएरा के लिए, JAVA_HOME = "$ (/ usr / libexec / java_home -v 11) का निर्यात करें"
विली Z

112

/usr/libexec/java_homeएक निर्देशिका नहीं बल्कि एक निष्पादन योग्य है। यह वर्तमान में कॉन्फ़िगर किया गया JAVA_HOME आउटपुट करता है और वास्तव में इसे परिवर्तित नहीं करता है। यही जावा वरीयताएँ अनुप्रयोग है, जो मेरे मामले में टूटा हुआ लगता है और वास्तव में जेवीएम को सही ढंग से नहीं बदलता है। यह 1.7 JVM को सूचीबद्ध करता है, लेकिन मैं वास्तव में के उत्पादन को बदलने के बिना सभी को टॉगल / अनगलॉग और ड्रैग और ड्रॉप कर सकता हूं /usr/libexec/java_home

शेर पर Oracle से 1.7.0 u6 स्थापित करने और वरीयताओं में डिफ़ॉल्ट के रूप में स्थापित करने के बाद भी, यह अभी भी ऐप्पल 1.6 जावा होम को वापस कर दिया है। एकमात्र फिक्स जो वास्तव में मेरे लिए काम करता है JAVA_HOME मैन्युअल रूप से सेट कर रहा है:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk/Contents/Home/

कम से कम इस तरह जब कमांड लाइन से इसे चलाया जाएगा तो यह 1.7 का उपयोग करेगा। /usr/libexec/java_homeअभी भी 1.6 पर जोर देता है।

अद्यतन : ओएसएक्स पर कमांड लाइन से जावा को समझना इस बात पर बेहतर स्पष्टीकरण है कि यह कैसे काम करता है।

export JAVA_HOME=`/usr/libexec/java_home -v 1.7` 

इसे करने का तरीका है। ध्यान दें, इसे 1.8 तक अपडेट करना ठीक है।


blog.hgomez.net/2012/07 टूट गया है, लेकिन यह उस उत्तर में तय हो गया है जो अब web.archive.org/web/20140813164713/http://blog.hgomez.net/blog/…
मैट

निर्यात JAVA_HOME = "/ usr / libexec / java_home -v 1.8"
लियो गुयेन

83

मेरे लिए, माउंटेन लायन 10.8.2, सबसे अधिक मत वाला समाधान काम नहीं करता है। मैं Oracle के माध्यम से jdk 1.7 स्थापित किया और होमब्रे से मैवेन किया।

मेरा समाधान हडूप की हैडऑफ -एनवी.श फ़ाइल से है जिसे मैंने होमब्रे से भी स्थापित किया है। मैं नीचे वाक्य ~ / .bash_profile में जोड़ता हूं, और यह काम करता है।

export JAVA_HOME="$(/usr/libexec/java_home)"

यह समाधान ओरेकल से स्थापित जावा 1.8 के साथ ओएस एक्स योसेमाइट के लिए भी काम करता है।


1
अगर आपने Apple से java 6 स्थापित किया होता तो यह काम करता। यहाँ बिंदु यह है कि आप oracle java 7.
Olivier Refalo

2
यह मेरे लिए Mavricks पर बहुत अच्छी तरह से काम करता है लेकिन java_home स्क्रिप्ट का स्थान अलग है। export JAVA_HOME="$(/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home)"
क्रिस्टोफर फ्रॉस्ट

1
मैं मैक Yosemite पर maven स्थापित करने की कोशिश की, इस तरह मेरे लिए JAVA_HOME काम करता है।
अलोकस

मेरे लिए सिएरा 10.12 और जावा 8
कनक सोनी

41

उपरोक्त उत्तर में से किसी ने भी मेरी मदद नहीं की। मुझे लगता है कि सभी उत्तर पुराने के लिए हैंOS X

OS X Yosemite 10.10 के लिए, इन चरणों का पालन करें

खोलने के लिए अपने पसंदीदा पाठ संपादक का उपयोग करें: ~/.bash_profile

//This command will open the file using vim
$ vim ~/.bash_profile

फ़ाइल में निम्न पंक्ति जोड़ें और इसे सहेजें (: vim के लिए "x" के बाद):

export JAVA_HOME=$(/usr/libexec/java_home)

फिर टर्मिनल में आउटपुट देखने के लिए निम्न दो कमांड टाइप करें:

$ source ~/.bash_profile

$ echo $JAVA_HOME

दूसरी पंक्ति में, आप .bash_profileफ़ाइल की सामग्री को अपडेट कर रहे हैं ।


मुझे लगता है कि मुझे आपका pb मिल गया है - आप '
विवादास्पद

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

@OlivierRefalo मैं देख सकता हूँ कि आपने दोहरे उद्धरणों (") के साथ अपना उत्तर अपडेट कर दिया है। लेकिन उद्धरणों के बिना भी यह काम करता है।
गिरि

बहुत बहुत धन्यवाद । इसने मेरे लिए योसेमाइट में 10.10
विजय

2
यह एकमात्र समाधान है, जो वास्तव में काम करता है। किसी अन्य समाधान द्वारा पथ जोड़ना, अस्थायी आधार पर जोड़ देगा, जब तक आप टर्मिनल को समाप्त नहीं करते हैं, और पथ गायब हो जाता है। स्थायी रूप से जोड़े जाने के लिए, पथ को .bash_profile फ़ाइल में सहेजा जाना चाहिए। इस बीच, मैंने सादगी के लिए विम के बजाय नैनो का इस्तेमाल किया।
नदीम जमाली

31

जावा 9 और कुछ साफ उपनामों के लिए अपडेट करें।

इन .bash_profile:

export JAVA_HOME8=`/usr/libexec/java_home --version 1.8`
export JAVA_HOME9=`/usr/libexec/java_home --version 9`

ध्यान दें, कि नवीनतम संस्करण के लिए यह है 9और नहीं 1.9

सक्रिय जावा सेट करें:

export JAVA_HOME=$JAVA_HOME8
export PATH=$JAVA_HOME/bin:$PATH

विभिन्न संस्करणों के बीच स्विच करने के लिए कुछ अतिरिक्त उपनाम:

alias j8='export JAVA_HOME=$JAVA_HOME8; export PATH=$JAVA_HOME/bin:$PATH'
alias j9='export JAVA_HOME=$JAVA_HOME9; export PATH=$JAVA_HOME/bin:$PATH'

टर्मिनल में परीक्षण:

% j8
% java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
% j9
% java -version
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

EDIT: जावा 10 के लिए अपडेट

export JAVA_HOME10=`/usr/libexec/java_home --version 10`
alias j10='export JAVA_HOME=$JAVA_HOME10; export PATH=$JAVA_HOME/bin:$PATH'

EDIT: जावा 11 के लिए अपडेट

export JAVA_HOME11=`/usr/libexec/java_home --version 11`
alias j11='export JAVA_HOME=$JAVA_HOME11; export PATH=$JAVA_HOME/bin:$PATH'

29

ऊपर अमेज़न के EC2 टूल के साथ काम नहीं किया, क्योंकि यह उम्मीद करता है कि bin/javaनीचे आदि JAVA_HOME/System/Library/Frameworks/JavaVM.framework/Homeकाम किया।


क्या यह शेर था? क्या आपको Apple से आधिकारिक जावा पैकेज मिला, या Oracle से Java6 / 7?
ओलिवियर रेफलो

मेरा मानना ​​है कि यह एप्पल का जावा पैकेज था।
Cawflands

1
@AndrewH हाँ मुझे वही मिला जो सच था। स्थापित एप्पल के जावा पैकेज और वास्तविक पुस्तकालय पथ की खोज (उदाहरण के लिए, स्थापित करने के लिए -vm में eclipse.ini): /System/Library/Java/Support/Deploy.bundle/Contents/Home/lib/javaws.jar
noogrub

जानकारी के लिए धन्यवाद। शायद मैं बहुत सरल हूं, लेकिन ओएस एक्स इतनी सरल चीज को पूरी तरह से गड़बड़ क्यों करता है?
कुबेरचौं

18

ओएस एक्स के लिए आप कर सकते हैं:

export JAVA_HOME=`/System/Library/Frameworks/JavaVM.framework/Versions/Current/commands/java_home`

ध्यान दें, HFS + केस असंवेदनशील है।
sufinawaz

14

Mac OS X Lion पर, चलाने के लिए Visualgc सेट करने के लिए, मैंने उपयोग किया:

export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home

1
मुझे आपका प्रस्ताव नहीं मिला: यह निर्यात JAVA_HOME = से कैसे भिन्न है /usr/libexec/java_home ? कमांड / usr / libexec / java_home रिटर्न / सिस्टम / सीमाएं / Java /JavaVirtualMachines/1.6.0.jdk/Contents/Home
ओलिवियर रिफैलो

Visualgc / usr / libexec / java_home पैदावार के लिए: java.exe में पाया गया: / usr / libexec / java_home एक JDK निर्देशिका में नहीं है। सूर्य J2SE 1.5.0 JDK (JRE नहीं) और फिर से प्रयास करने वाली निर्देशिका को संदर्भित करने के लिए कृपया अपना JVMSTAT_JAVA_HOME पर्यावरण चर सेट और निर्यात करें।
ईजीएचएम

13

निम्नलिखित ने मेरे लिए काम किया। मैं जावा 8 स्थापित के साथ OSX Yosemite पर ZSH का उपयोग कर रहा हूं।

निम्न आदेश /usr/libexec/java_homeJDK घर के लिए रास्ता निकालता है:

/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home

अपने में ~/.zshrc,

export JAVA_HOME = "/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home"

यह कैसे अलग है कि प्रस्तावित समाधान?
ओलिवियर रिफलो

यह प्रस्तावित समाधान के लिए अलग नहीं है। यह समाधान ZSH, Java 8 और OSX Yosemite का उपयोग करने वाले लोगों के लिए विशिष्ट है।
हेमंत

OSX Yosemite, चीयर्स मेट पर स्थापित जावा 1.8 के साथ एक आकर्षण की तरह काम करने की पुष्टि की।
आशूर

सामान्य समाधान जावा 8, zsh, और योसेमाइट के लिए ठीक काम करता है।
याउई

10

एक बेहतर (अधिक अपग्रेड करने योग्य) तरीका निम्नलिखित का उपयोग करना है:

/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home

यह AWS के साथ भी काम करना चाहिए क्योंकि यह binहोम के नीचे है


1
उस कथन से अधिक असहमत "अधिक अपग्रेड करने योग्य" / usr / libexec / java_home एक exe है जो एक पथ देता है, एक निश्चित पथ नहीं। आपके द्वारा उपयोग किए जाने वाले jvm संस्करण के आधार पर, ऊपर का मार्ग मैच नहीं करेगा
Olivier Refalo

10

1.7.0_21-b12 जैसे नए ओरेकल जेवीएम यहां स्थापित होने लगते हैं:

/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home


1
वास्तव में - और /usr/libexec/java_homeउपकरण इन जावा संस्करणों के लिए एक त्रुटि देता है।
जो डायंडेल

1

2
यदि आप JRE को स्थापित करते हैं तो यह मार्ग है। अधिकांश मूल्यांकित उत्तर और टिप्पणियाँ JDK के बारे में हैं। एक ही बात नहीं है।
8None1

9

MacOS Mojave के लिए 10.14.1 और जावा 11.0.1 के रूप में मैंने प्रोफाइल सेट किया

export JAVA_HOME=$(/usr/libexec/java_home)

इसकी पुष्टि करने के लिए टर्मिनल में कुंजी:

$JAVA_HOME/bin/java -version

java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)

1
कैटालिना पर काम करता है। Ty
TuGordoBello

5

मेरा दृष्टिकोण है:

.bashrc

export JAVA6_HOME=`/usr/libexec/java_home -v 1.6`
export JAVA7_HOME=`/usr/libexec/java_home -v 1.7`
export JAVA_HOME=$JAVA6_HOME

# -- optional
# export PATH=$JAVA_HOME/bin:$PATH

इससे J6 और J7 के बीच स्विच करना बहुत आसान हो जाता है


@AdonisSMU क्या आपको कोई हल मिला?
लुकास

3

मुझे स्पष्ट रूप से इसे अपने मैकबुक एयर पर सटीक पथ पर सेट करना था।

इसके बाद के चरण:

  1. कोशिश करें echo $JAVA_HOME(यदि यह सेट है तो यह रास्ता दिखाएगा), यदि नहीं, तो इसका उपयोग करके खोजने का प्रयास करेंsudo find /usr/ -name *jdk
  2. बैश पी के साथ संपादित करें - sudo nano ~/.bash_profile
  3. JAVA होम के लिए सटीक पथ जोड़ें (ऊपर चरण 2 से पथ के साथ) export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
  4. सुरषित और बहार
  5. JAVA_Home का उपयोग करके जांचें - echo $JAVA_HOME

मैं जावेद 8 के साथ मैकबुक एयर पर MACOS MOJAVE - 10.14.2 (18C54) चला रहा हूं


2

Mac OS X 10.9 के लिए मैंने Oracle से JRE का नवीनतम संस्करण स्थापित किया और फिर JAVA_HOME को /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk.Contents/Home पर रीसेट करें।

मुझे यकीन है कि एक बेहतर तरीका है लेकिन मुझे उठकर दौड़ना है।

hughsmac: ~ hbrien $ echo $ JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home


1
एक ताजा मावेरिक्स स्थापित करने पर, यह एकमात्र समाधान है जो मेरे लिए काम करता है। यहाँ स्थित jdk घर में sqldeveloper को इंगित करना था (जैसा कि इस धागे द्वारा सुझाव दिया गया है कि इसे काम करने के लिए प्राप्त किया जा सकता है
क्रिस)

2

OSX Yosemite, ZSH, और Java SE रनटाइम एनवायरनमेंट 8, मुझे निम्न करना था:

$ sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands /System/Library/Frameworks/JavaVM.framework/Versions/Current/bin

और ~ / .zshrc में JAVA_HOME बदलें export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/Current"


1

मेरे मैक ओएस को अपग्रेड करने और मेरे लिए काम करने के बाद भी यही मुद्दा मिला:

  1. cmd> vi ~ / .bash_profile

  2. जोड़ें

  3. cmd> स्रोत ~ / .bash_profile या एक नया टर्मिनल खोलें

मुझे लगता है कि jdk संस्करण भिन्न हो सकता है, इसलिए बस उस संस्करण का उपयोग करें जो आपके पास है / लाइब्रेरी / जावा / JavaVirtualMachines /


1

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

आप क्या करते हैं अपने ~ / .bash_profile को संपादित करें और निम्नलिखित जोड़ें:

function setjdk() {
  if [ $# -ne 0 ]; then
   removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin'
   if [ -n "${JAVA_HOME+x}" ]; then
    removeFromPath $JAVA_HOME
   fi
   export JAVA_HOME=`/usr/libexec/java_home -v $@`
   export PATH=$JAVA_HOME/bin:$PATH
  fi
 }
 function removeFromPath() {
  export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
 }
setjdk 1.7

क्या स्क्रिप्ट करता है में पहली निकालें अन्य JDK संस्करण के लिए है पथ इतना है कि वे हमारे नए JDK संस्करण के साथ हस्तक्षेप नहीं करेगा। फिर यह / usr / libexec / java_home का कुछ चतुर उपयोग करता है जो एक कमांड है जो JDK संस्करणों को स्थापित करता है। -V तर्क कहता है JAVA_HOME , आपूर्ति की संस्करण के साथ JDK की राह पर लौटने के लिए उदाहरण के लिए 1.7। हम नए पाए गए JAVA_HOME निर्देशिका की बिन निर्देशिका को इंगित करने के लिए PATH को भी अपडेट करते हैं । अंत में हम केवल फ़ंक्शन का उपयोग करके निष्पादित कर सकते हैं

setjdk 1.7

जो 1.7 शाखा के नवीनतम स्थापित JDK संस्करण का चयन करता है। एक विशिष्ट संस्करण का चयन करने के लिए आप बस निष्पादित कर सकते हैं

setjdk 1.7.0_51

बजाय। रन / usr / libexec / java_home -V कैसे संस्करणों का चयन करने के बारे में अधिक जानकारी प्राप्त करने के लिए।

PS आप इसे सहेजने के बाद स्रोत ~ / .bash_profile के लिए मत भूलना ।


1

जावा 11 (JDK 11) के लिए इसे निम्नलिखित कमांड के साथ स्थित किया जा सकता है:

/usr/libexec/java_home -v 11

0

यह उत्तर माउंटेन लायन से संबंधित है न कि लायन से। मुझे AWS कमांड लाइन टूल्स के लिए ऐसा करने की आवश्यकता थी। एडब्ल्यूएस डॉक्स के अनुसार , रनिंग which javaरिटर्न/usr/bin/java

तो, मैं JAVA_HOME=/usrअपने में सेट.bashrc

जाहिर है, /usr/bin/javaएक प्रतीकात्मक लिंक है /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaजो इसे सभी काम करता है।

अपडेट करें

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


बिंदु है, / usr एक सही JAVA_HOME निर्देशिका नहीं है। बिन / जावा का पता लगाना ठीक है। लेकिन कभी-कभी बिल्डरों (चींटी, मेक) JAVA_HOME का उपयोग lib / tools.jav में संकलक को संदर्भित करने के लिए करते हैं। आपका समाधान उन लोगों के लिए विफल हो जाएगा
Olivier Refalo

आह, जानकारी के लिए धन्यवाद। तुम सही हो। उत्तर को अपडेट करेगा।
अंजन

0

मैक योसेमाइट के लिए,

JDK 1.7.0_xx उपयोग कर रहा है

$ ls -ltar /usr/bin/java
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.7.0_xx.jdk/Contents/Home

क्या आप इस उत्तर को उपयोगी बनाने के लिए अधिक जानकारी जोड़ सकते हैं।
मिका

0

ऑस्ट्रेलियाई कर कार्यालय (ATO) से AUSKEY का उपयोग करने वाले किसी को भी AUSKEY की स्थापना रद्द करनी चाहिए। यह मेरे JAVA_HOME मुद्दों को हल करता है।

यह मैक उपयोगकर्ताओं के लिए भी आवश्यक नहीं है। हाँ!


0

मैं हाई सिएरा 10.13.4 पर फिश शेल का उपयोग कर रहा हूं और ब्रू के माध्यम से जावा को स्थापित कर रहा हूं ।

मेरे द्वारा मेरे द्वारा चलाए गए सिस्टम पर इसे सही तरीके से सेट करने के लिए यह स्वचालित रूप से सेट नहीं है :

set -U JAVA_HOME (/usr/libexec/java_home)

0

बस netbeans.confफ़ाइल में 1.8 jdk संस्करण का java_home सेट करें :

/Applications/NetBeans/NetBeans 8.2.app/Contents/Resources/NetBeans/etc/netbeans.conf

असहज रेखा:

netbeans_jdkhome="path/to/jdk"

और मेरे मामले में, अपने 1.8 jdk के लिए रास्ता तय करें:

netbeans_jdkhome="/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home"

यह दृष्टिकोण आपको मैक ओएस पर कई jdk संस्करणों के लिए देता है


0

मैक पर मछली टर्मिनल उपयोगकर्ताओं के लिए (मेरा मानना ​​है कि यह लिनक्स पर भी उपलब्ध है), यह काम करना चाहिए:

set -Ux JAVA_8 (/usr/libexec/java_home --version 1.8)
set -Ux JAVA_12 (/usr/libexec/java_home --version 12)
set -Ux JAVA_HOME $JAVA_8       //or whichever version you want as default

-1

मैक उपयोगकर्ता के लिए। जावा 8 को जोड़ना चाहिए

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
# JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home

जावा ६:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6`
# JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

रेफरी: http://qiita.com/seri_k/items/e978c1339ce51f13e297

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.