JAVA_HOME อยู่ที่ไหนบน macOS Mojave (10.14) ถึง Lion (10.7)


559

Java เป็นแพคเกจเสริมบน macOS เวอร์ชันล่าสุด

แต่ติดตั้งครั้งเดียวก็จะปรากฏขึ้นเช่นJAVA_HOMEตัวแปรสภาพแวดล้อมที่ไม่เหมาะสม


1
สำเนาซ้ำที่เป็นไปได้ของสิ่งที่ฉันควรตั้งค่า JAVA_HOME เป็นบน OSX
mipadi

ใน Mac Sierra ฉัน / Library / Java / JavaVirtualMachines ซึ่งมีการตั้งค่า jdk และ System> Java Java 2 สิ่งที่แตกต่างกันอย่างไร
vikramvi

คำถามที่แตกต่างกันขอบคุณ
Olivier Refalo

อย่าประมาทโอกาสที่การติดตั้ง Java ของคุณอาจไม่เสร็จสมบูรณ์อย่างถูกต้อง หากคำแนะนำที่ดีเยี่ยมด้านล่างไม่สามารถใช้การได้ลองติดตั้งอีกครั้ง!
MarkHu

คำตอบ:


1059

เมื่อติดตั้งแพ็คเกจเสริมของ JavaหรือOracle 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
ดีแล้วที่รู้. ฉันต้องบอกว่าฉันไม่ได้ตื่นเต้นกับรายการฟีเจอร์สำหรับ Lion มีไม่ได้ดูเหมือนจะมีมากในทางของการปรับปรุงสำหรับการใช้งานของฉัน ...
prodigitalson

1
@Oliver: ewww :-) นั่นอาจเป็นสิ่งที่มีประโยชน์น้อยที่สุด ... ฉันมักจะเปิดหน้าต่างหลายบานและจัดเรียงไว้บนหน้าจอดังนั้นฉันจึงสามารถเห็นหลาย ๆ สิ่งพร้อมกัน ... โดยปกติจะเป็นเลย์เอาต์ที่แตกต่างกันในทุกพื้นที่
prodigitalson

11
สิ่งนี้ไม่ได้ผลสำหรับฉัน /System/Library/Frameworks/JavaVM.framework/Home ทำงาน
chaostheory

7
ทำงานบนนอกรีตเช่นกัน!
cbare

3
สำหรับ Java 11 และ High Sierra ให้ส่งออก JAVA_HOME = "$ (/ usr / libexec / java_home -v 11)"
Willie Z

112

/usr/libexec/java_homeไม่ใช่ไดเรกทอรี แต่เป็นไฟล์ปฏิบัติการ มันจะส่งออก JAVA_HOME ที่ตั้งค่าไว้ในปัจจุบันและจะไม่เปลี่ยนแปลง นั่นเป็นสิ่งที่แอป Java Preferences ใช้ซึ่งในกรณีของฉันดูเหมือนจะไม่สมบูรณ์และไม่ได้เปลี่ยน JVM อย่างถูกต้อง มันไม่รายการ 1.7 JVM แต่ฉันสามารถสลับ / untoggle /usr/libexec/java_homeและลากและวางทั้งหมดที่ฉันต้องการโดยไม่ต้องมีการเปลี่ยนแปลงจริงการส่งออกของ

แม้หลังจากติดตั้ง 1.7.0 u6 จาก Oracle บน Lion และตั้งค่าให้เป็นค่าเริ่มต้นในการกำหนดค่าตามความชอบ การแก้ไขเดียวที่ใช้งานได้จริงสำหรับฉันคือการตั้งค่า JAVA_HOME ด้วยตนเอง:

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

อย่างน้อยตอนนี้เมื่อเรียกใช้จากบรรทัดคำสั่งมันจะใช้ 1.7 /usr/libexec/java_homeยังยืนยันใน 1.6

อัปเดต : การทำความเข้าใจ Java จาก Command Line บน OSXมีคำอธิบายที่ดีกว่าเกี่ยวกับการทำงานของมัน

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/ ......
Matt C

ส่งออก JAVA_HOME = "/ usr / libexec / java_home -v 1.8"
Leo Nguyen

83

สำหรับฉัน Mountain Lion 10.8.2 โซลูชันที่โหวตมากที่สุดไม่ทำงาน ฉันติดตั้ง jdk 1.7 ผ่าน Oracle และ maven จาก homebrew

โซลูชันของฉันมาจากไฟล์ hadoop-env.sh ของ hadoop ซึ่งฉันติดตั้งจาก homebrew เช่นกัน ฉันเพิ่มประโยคด้านล่างใน ~ / .bash_profile และใช้งานได้

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

วิธีนี้ยังใช้งานได้กับ OS X Yosemite ที่ติดตั้ง Java 1.8 จาก Oracle


1
มันจะทำงานได้ถ้าคุณติดตั้ง java 6 จาก Apple ประเด็นตรงนี้คือคุณใช้ oracle java 7
Olivier Refalo

2
สิ่งนี้ใช้ได้กับฉันใน Mavricks ได้เป็นอย่างดี แต่ตำแหน่งของสคริปต์ java_home นั้นแตกต่างกัน export JAVA_HOME="$(/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home)"
Christopher Frost

1
ฉันพยายามตั้งค่า maven บน mac Yosemite วิธีนี้เพื่อให้ JAVA_HOME ใช้งานได้สำหรับฉัน
Alocus

ใช้งานได้กับฉันใน Sierra 10.12 และ Java 8
Kanak Sony

41

ไม่มีคำตอบข้างต้นช่วยฉัน ฉันคิดว่าคำตอบทั้งหมดสำหรับผู้สูงอายุOS X

สำหรับ OS X Yosemite 10.10 ให้ทำตามขั้นตอนเหล่านี้

ใช้โปรแกรมแก้ไขข้อความที่คุณชื่นชอบเพื่อเปิด: ~/.bash_profile

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

เพิ่มบรรทัดต่อไปนี้ในไฟล์และบันทึก (: ตามด้วย "x" สำหรับกลุ่ม):

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

จากนั้นในเทอร์มินัลพิมพ์สองคำสั่งต่อไปนี้เพื่อดูผลลัพธ์:

$ source ~/.bash_profile

$ echo $JAVA_HOME

ในบรรทัดที่สองคุณกำลังอัพเดตเนื้อหาของ.bash_profileไฟล์


ฉันคิดว่าฉันได้รับ pb ของคุณ - คุณใช้เครื่องหมายคำพูดแทน backquotes 'vs `
Olivier Refalo

ไม่ฉันใช้คำพูดที่ถูกต้อง แต่ฉันลองคัดลอกแล้วไม่ได้ผล ฉันอัปเดตคำตอบของฉันเพราะมันใช้งานได้สำหรับฉัน
Giri

@OlivierRefalo ฉันเห็นว่าคุณได้อัปเดตคำตอบของคุณด้วยเครื่องหมายคำพูดคู่ (") แต่ถึงแม้จะไม่มีเครื่องหมายอัญประกาศมันก็ใช้ได้
Giri

ขอบคุณมาก . มันใช้งานได้สำหรับฉันที่ Yosemite 10.10
Vijay

2
นี่เป็นทางออกเดียวที่ใช้งานได้จริง การเพิ่มพา ธ ด้วยโซลูชันอื่น ๆ จะเพิ่มเป็นการชั่วคราวจนกว่าคุณจะยุติเทอร์มินัลและพา ธ จะหายไป หากต้องการเพิ่มอย่างถาวรพา ธ ต้องถูกบันทึกในไฟล์. bash_profile ในขณะเดียวกันฉันใช้นาโนแทนที่จะเป็นกลุ่มเพื่อความเรียบง่าย
Nadeem Jamali

31

อัพเดตสำหรับ Java 9 และนามแฝงที่เรียบร้อย

ใน.bash_profile:

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

ทราบว่าสำหรับรุ่นล่าสุดมันเป็นและไม่ได้91.9

ตั้งค่า Java ที่ใช้งานอยู่:

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'

ทดสอบใน terminal:

% 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)

แก้ไข: อัปเดตสำหรับ Java 10

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

แก้ไข: อัปเดตสำหรับ Java 11

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

29

ดังกล่าวข้างต้นไม่ทำงานสำหรับฉันกับ Amazon EC2 เครื่องมือเพราะมันคาดbin/javaฯลฯ JAVA_HOMEภายใต้ /System/Library/Frameworks/JavaVM.framework/Homeทำงานได้ดี


มันเป็นสิงโตเหรอ? คุณได้รับแพ็คเกจ Java อย่างเป็นทางการจาก Apple หรือ Java6 / 7 จาก Oracle หรือไม่
Olivier Refalo

ฉันเชื่อว่าเป็นแพ็คเกจ Java ของ Apple
Cawflands

1
@ AndrewH ใช่ฉันพบว่ามันเป็นเรื่องจริง ติดตั้งแพ็กเกจ Java ของ Apple และค้นพบเส้นทางไลบรารีจริง (ตัวอย่างเช่นเพื่อตั้งค่า -vm ใน eclipse.ini): /System/Library/Java/Support/Deploy.bundle/Contents/Home/lib/javaws.jar
noogrub

ขอบคุณสำหรับข้อมูล. บางทีฉันอาจจะง่ายเกินไป แต่ทำไม OS X ถึงทำให้เรื่องแบบนี้ยุ่งเหยิงไปหมด
Kuberchaun

18

สำหรับ OS X คุณสามารถทำได้:

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 ส่งคืน /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Olivier Refalo

สำหรับ visualgc / usr / libexec / java_home ให้ผล: java.exe พบที่: / usr / libexec / java_home ไม่ได้อยู่ในไดเรกทอรี JDK โปรดตั้งค่าและส่งออกตัวแปรสภาพแวดล้อม JVMSTAT_JAVA_HOME ของคุณเพื่ออ้างอิงถึงไดเรกทอรีที่มี Sun J2SE 1.5.0 JDK (ไม่ใช่ JRE) และลองอีกครั้ง
EGHM

13

ต่อไปนี้ใช้งานได้สำหรับฉัน ฉันใช้ ZSH บน OSX Yosemite พร้อมติดตั้ง Java 8

คำสั่งต่อไปนี้/usr/libexec/java_homeส่งเสียงพา ธ ไปที่หน้าแรกของ JDK:

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

ในของคุณ~/.zshrc,

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

มันแตกต่างกันอย่างไรกับโซลูชั่นที่นำเสนอ?
Olivier Refalo

มันไม่ต่างกับวิธีแก้ปัญหาที่เสนอ วิธีนี้เป็นวิธีเฉพาะสำหรับผู้ที่ใช้ ZSH, Java 8 และ OSX Yosemite
Hemanta

ยืนยันว่าใช้งานได้อย่างมีเสน่ห์เมื่อติดตั้ง java 1.8 บน OSX โยเซมิตี
Ashoor

โซลูชันทั่วไปใช้งานได้ดีสำหรับ Java 8, zsh และ Yosemite
yauauie

10

วิธีที่ดีกว่า (อัปเกรดได้มากขึ้น) คือการใช้สิ่งต่อไปนี้:

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

สิ่งนี้ควรทำงานกับ AWS ด้วยเช่นกันเนื่องจากbinอยู่ใต้โฮม


1
ชนิดที่ไม่เห็นด้วยกับข้อความนั้นว่า "อัปเกรดได้มากกว่า" / usr / libexec / java_home เป็น exe ที่ส่งคืนพา ธ ไม่ใช่เส้นทางคงที่ นอกจากนี้ขึ้นอยู่กับรุ่น jvm ที่คุณใช้เส้นทางข้างบนจะไม่ตรงกัน
Olivier Refalo

10

Oracle JVM ที่ใหม่กว่าเช่น 1.7.0_21-b12 ดูเหมือนจะติดตั้งที่นี่:

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


1
แน่นอน - และ/usr/libexec/java_homeเครื่องมือส่งคืนข้อผิดพลาดสำหรับ Java เวอร์ชันเหล่านี้
Joe Dyndale

1
นี่เป็นคำตอบเดียวที่ใช้ได้สำหรับฉันหลังจากดาวน์โหลด v1.7 JRE
maxrossello

2
นี่คือพา ธ ถ้าคุณติดตั้ง JRE คำตอบและความเห็นที่ได้รับคะแนนส่วนใหญ่นั้นเกี่ยวกับ JDK ไม่เหมือนกัน
8None1

9

สำหรับ macOS Mojave 10.14.1 และ JAVA 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
ใช้งานได้กับ Catalina 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 คุณหาทางออกหรือไม่
Luccas

3

ฉันต้องตั้งค่าอย่างชัดเจนไปยังเส้นทางที่แน่นอนบนเครื่อง Macbook ของฉัน

ขั้นตอนตาม:

  1. ลองecho $JAVA_HOME(ถ้าตั้งไว้มันจะแสดงเส้นทาง) ถ้าไม่ลองค้นหาโดยใช้sudo find /usr/ -name *jdk
  2. แก้ไข Bash p ด้วย - sudo nano ~/.bash_profile
  3. เพิ่มเส้นทางที่แน่นอนใน JAVA Home (ด้วยเส้นทางจากขั้นตอนที่ 2 ด้านบน) export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
  4. บันทึกและออก
  5. ตรวจสอบ JAVA_Home โดยใช้ - echo $JAVA_HOME

ฉันใช้งาน MacOS MOJAVE - 10.14.2 (18C54) บน Macbook Air กับ JAVA 8


2

สำหรับ Mac OS X 10.9 ฉันติดตั้ง JRE เวอร์ชันล่าสุดจาก Oracle จากนั้นรีเซ็ต 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
ในการติดตั้ง Mavericks ใหม่นี่เป็นทางออกเดียวที่เหมาะกับฉัน มีการจุด sqldeveloper ไปที่บ้าน jdk ตั้งอยู่ที่นี่ (แนะนำโดยหัวข้อนี้จะได้รับมันในการทำงาน.
คริส

2

OSX Yosemite, ZSH และ Java SE Runtime Environment 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

มีปัญหาเดียวกันหลังจากฉันอัพเกรด Mac OS และการทำงานต่อไปนี้สำหรับฉัน:

  1. cmd> vi ~ / .bash_profile

  2. เพิ่ม / อัพเดตบรรทัดสำหรับ JAVA_HOME: export JAVA_HOME = "/ Library / Java / JavaVirtualMachines / jdk1.7.0_15.jdk / เนื้อหา / หน้าแรก"

  3. cmd> source ~ / .bash_profile หรือเปิดเทอร์มินัลใหม่

ฉันคิดว่ารุ่น jdk อาจแตกต่างกันดังนั้นให้ใช้รุ่นที่คุณมีภายใต้ / Library / Java / JavaVirtualMachines /


1

หากคุณจำเป็นต้องมี JDK หลายเวอร์ชันภายใต้ Mac OS X (Yosemite) อาจเป็นประโยชน์ในการเพิ่มสคริปต์บางอย่างสำหรับการสลับอัตโนมัติระหว่างพวกเขา

สิ่งที่คุณทำคือการแก้ไข~ / .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 อื่น ๆ ในPATH ก่อนเพื่อไม่ให้รบกวน JDK รุ่นใหม่ของเรา จากนั้นจะทำให้การใช้งานที่ชาญฉลาดของ/ usr / libexec / java_homeซึ่งเป็นคำสั่งที่แสดงรายการรุ่น JDK ที่ติดตั้ง -vอาร์กิวเมนต์บอกJAVA_HOMEเพื่อกลับเส้นทางของ JDK กับรุ่นที่จัดเช่น 1.7 นอกจากนี้เรายังอัปเดตPATHให้ชี้ไปที่ไดเรกทอรี bin ของไดเรกทอรีJAVA_HOME ที่เพิ่งค้นพบ ในตอนท้ายเราสามารถรันฟังก์ชั่นโดยใช้

setjdk 1.7

ซึ่งเลือกรุ่น JDK ที่ติดตั้งล่าสุดของสาขา 1.7 ในการเลือกเวอร์ชันเฉพาะคุณสามารถดำเนินการได้

setjdk 1.7.0_51

แทน. รัน/ usr / libexec / java_home -Vเพื่อรับรายละเอียดเพิ่มเติมเกี่ยวกับวิธีเลือกเวอร์ชัน

PS อย่าลืม แหล่งที่มา ~ / .bash_profileหลังจากที่คุณบันทึก



0

คำตอบนี้เกี่ยวข้องกับMountain Lionไม่ใช่ Lion ฉันต้องทำสิ่งนี้เพื่อเครื่องมือบรรทัดคำสั่ง AWS ตามเอกสาร 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ตัวแปรอื่น ๆ นอกเหนือจากเครื่องมือบรรทัดคำสั่ง AWS มันใช้งานได้ดีสำหรับเครื่องมือบรรทัดคำสั่งของ AWS ตามที่ระบุในเอกสาร


ประเด็นคือ / usr ไม่ใช่ไดเรกทอรี JAVA_HOME ที่ถูกต้อง ตกลงเพื่อค้นหา bin / java แต่บางครั้งผู้สร้าง (ant, make) ใช้ JAVA_HOME เพื่ออ้างอิง javac คอมไพเลอร์ใน lib / tools.jar วิธีการแก้ปัญหาของคุณจะล้มเหลวสำหรับคนเหล่านั้น
Olivier Refalo

ขอบคุณสำหรับข้อมูล คุณพูดถูก จะอัพเดตคำตอบ
Anjan

0

สำหรับ Mac Yosemite

ใช้ 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

ทุกคนที่ใช้ AUSKEY จาก Australian Tax Office (ATO) ควรถอนการติดตั้ง AUSKEY นี่เป็นปัญหาของ JAVA_HOME ของฉัน

มันไม่จำเป็นสำหรับผู้ใช้ MAC อีกต่อไป ย่ะ!


0

ฉันใช้Fish shell กับ High Sierra 10.13.4 และติดตั้ง Java ผ่าน Brew

ไม่ได้ตั้งค่าโดยอัตโนมัติดังนั้นการตั้งค่าอย่างถูกต้องในระบบที่ฉันเรียกใช้:

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

0

เพียงตั้งค่า java_home เป็น 1.8 jdk ในnetbeans.confไฟล์:

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

สาย uncomment:

netbeans_jdkhome="path/to/jdk"

และกำหนดเส้นทางไปที่ 1.8 jdk ของคุณในกรณีของฉัน:

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

วิธีนี้ทำให้คุณมี jdk หลายรุ่นใน mac os


0

สำหรับผู้ใช้ Fish terminal บน Mac (ฉันเชื่อว่ามีให้ใน Linux ด้วย) สิ่งนี้ควรใช้งานได้:

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

สำหรับผู้ใช้ mac java 8 ควรเพิ่ม

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

java 6:

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.