ฉันไม่คิดว่าเป็นไปได้ที่จะสลับ JRE (สภาพแวดล้อมรันไทม์) ดูที่นี่:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jre.html
ซึ่งระบุ:
สามารถติดตั้ง JRE เดียวเท่านั้น การติดตั้ง JRE จะลบ JRE ที่ติดตั้งไว้ก่อนหน้านี้ เวอร์ชัน JRE ที่ใช้โดยระบบสามารถพิจารณาได้จากหนึ่งในสองวิธี:
การแก้ปัญหา:
ฉันมีปัญหาที่คล้ายกันเช่นคุณกับ Minecraft กับ Wuala ที่ฉันต้องการเรียกใช้ Wuala โดยใช้ Java 1.6 ในขณะที่ฉันต้องการพัฒนาด้วย JDK 1.7 และฉันจัดการสิ่งนี้โดยเปิดแพ็คเกจ Wuala.app และเปลี่ยนสคริปต์เริ่มต้นใน:
/Applications/Wuala.app/Contents/MacOS/wuala
จาก:
exec java ${VMARGS} -cp "${JAR_DIR}/loader3.jar":/System/Library/Java/ com.wuala.loader3.Loader3 -alternateprogrampath "${JAR_DIR}" -installed $*
ไปที่:
/usr/libexec/java_home -v 1.6.0 --exec java ${VMARGS} -cp "${JAR_DIR}/loader3.jar":/System/Library/Java/ com.wuala.loader3.Loader3 -alternateprogrampath "${JAR_DIR}" -installed $*
เช่นแทนที่: exec
ด้วย:/usr/libexec/java_home -v 1.6.0 --exec
นี่เป็นหลักสูตรที่ค่อนข้างจะมีส่วนเกี่ยวข้องและจะถูกทำลายทุกครั้งที่มีการอัปเดตอัตโนมัติ
วิธีใช้ JDK อื่นดูที่นี่:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html
ซึ่งระบุ:
ในการรัน Java เวอร์ชันอื่นให้ระบุพา ธ เต็มหรือใช้เครื่องมือ java_home:
/usr/libexec/java_home -v 1.7.0_06 --exec javac -version
นี่คือภาพประกอบและตัวอย่างจากการตั้งค่าของฉัน:
การติดตั้ง Oracle JDK:
odin:~ geff$ ls -al /Library/Java/JavaVirtualMachines
total 0
21058660 0 drwxr-xr-x 3 root wheel - 102 24 Oct 18:04:33 2012 jdk1.7.0_09.jdk/
21061692 0 drwxr-xr-x 3 root wheel - 102 24 Oct 18:06:08 2012 jdk1.7.0_07.jdk/
21042328 0 drwxrwxr-x 3 root wheel - 102 20 Apr 06:58:53 2012 1.7.0.jdk/
21031664 0 drwxrwxr-x 7 root admin - 238 24 Oct 18:04:16 2012 ../
21042327 0 drwxr-xr-x 5 root wheel - 170 24 Oct 18:06:13 2012 ./
Apple จัดหา JDK:
odin:~ geff$ ls -al /System/Library/Java/JavaVirtualMachines
total 0
21026468 0 drwxr-xr-x 3 root wheel - 102 1 Nov 17:49:02 2011 1.6.0.jdk/
21026436 0 drwxr-xr-x 6 root wheel - 204 24 Mar 23:04:06 2012 ../
21026467 0 drwxr-xr-x 3 root wheel - 102 1 Nov 17:49:02 2011 ./
มันใช้งานได้สำหรับฉันที่จะใช้ Apple ที่ให้มาด้วย 1.6 JDK
odin:~ geff$ /usr/libexec/java_home -v 1.6.0_37 --exec java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
เลือกระหว่างเวอร์ชัน 1.7 ของ Oracle:
เลือก Oracle JDK 1.7.0_04 ตัวแรก
odin:~ geff$ /usr/libexec/java_home -v 1.7.0_04 --exec java -version
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b21)
Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode)
เลือก JDK 1.7.0_07
odin:~ geff$ /usr/libexec/java_home -v 1.7.0_07 --exec java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)
ค่าเริ่มต้น JDK คือค่าสูงสุด:
odin:~ geff$ java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)
เริ่มต้นที่ระดับแพตช์ "สูงสุด" เมื่อใช้หมายเลขเวอร์ชันรองเท่านั้น:
odin:~ geff$ /usr/libexec/java_home -v 1.7.0 --exec java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)