Saya mencoba menginstal JDK 8 di OS X Mountain Lion (untuk bereksperimen dengan fitur lambda baru).
Titik pangkal
Mesin baru-baru ini diperbarui dari OS X 10.6 hingga 10.8, dengan
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.8.2
BuildVersion: 12C60
$ ls -l /Library/Java/JavaVirtualMachines/
Home@ -> jdk1.7.0_09.jdk/Contents/Home/
jdk1.7.0_09.jdk/
$ ls -l /System/Library/Java/JavaVirtualMachines/
1.6.0.jdk/
dan folder ini dari era OS X 10.6:
/System/Library/Frameworks/JavaVM.framework/Versions/
Di ~ / .bashrc yang telah saya atur
export JAVA_HOME=/Library/Java/JavaVirtualMachines/Home
Jadi saya punya
$ 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)
$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home
Bagaimana saya menginstal JDK 8
Mengunduh file .tar.gz dari http://jdk8.java.net/lambda/ dan membukanya
- /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
(Saya membuat folder
jdk1.8.0.jdk/Contents/Home
secara manual)- Mengubah symlink
/Library/Java/JavaVirtualMachines/Home
untuk menunjuk ke jdk1.8
Sekarang sudah
$ java -version
openjdk version "1.8.0-ea"
OpenJDK Runtime Environment (build 1.8.0-ea-lambda-nightly-h2135-20121203-b67-b00)
OpenJDK 64-Bit Server VM (build 25.0-b05, mixed mode)
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/Home
$ ls /Library/Java/JavaVirtualMachines
Home@ -> jdk1.8.0.jdk/Contents/Home/
...
Tetapi java_home
utilitas itu tampaknya tidak peduli:
$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home
Bahkan tidak tahu bahwa ada JDK 8 yang tersedia:
$ /usr/libexec/java_home -v 1.8*
Unable to find any JVMs matching version "1.8*".
Pertanyaan
Saya ingin /usr/libexec/java_home
utilitas untuk menemukan JDK yang diinstal, jadi saya dapat menggunakan sesuatu seperti ini:
alias setjdk17='export JAVA_HOME=$(/usr/libexec/java_home -v 1.7*)'
alias setjdk18='export JAVA_HOME=$(/usr/libexec/java_home -v 1.8*)'
dan singkirkan Home
symlink. Apakah ada yang tahu
- bagaimana saya bisa menginstal JDK 8 dengan benar?
- bagaimana saya bisa
/usr/libexec/java_home
mengenalinya?