由於並不是全部用戶都用得着 Java ,因此在默認狀態下 OS X 不預裝 Java , 若是你須要的話能夠手動安裝.java
到 Oracle 下載最新版的 Java 8 JDK 安裝,安裝目錄可經過命令「/usr/libexec/java_home」查看程序員
安裝後在終端輸入windows
java -version
若是顯示版本就說明安裝好了.工具
若是顯示以下, 就說明沒安裝對,須要從新來過.ui
No Java runtime present, requesting install.spa
其實,也能夠嘗試下JAVA環境管理工具命令行
查看java連接路徑:code
ls -l /usr/bin/java
bbcdeMacBook-Pro:~ cbb$ ls -l /usr/bin/java
lrwxr-xr-x 1 root wheel 74 1 14 2016 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javablog
能夠看到java鏈接到了current版本。那麼這個究竟是什麼版本呢?其實,mac中current只是一個快捷方式而已,是爲了方便設置默認java的。
這個連接連到哪裏,默認的java就是哪一個。可是在mac中能夠保持這個java連接不變,只是改變一下當前的java便可,下面是步驟[注:該步驟有待證明,這裏只作參考]:
1)打開 Finder : 單擊桌面地步的finder圖標便可。
2)Application-->Utilities-->Java-->Java Preferences
3)由第二步能夠打開「Java Preferences」對話框,選中「General」tab。在下面的「Java Application Runtime Settings」區把須要的java版本拖動到最頂端便可。
最頂端的java就是當前(current)java,這樣在改變默認java版本時就不用在/usr/bin下從新設置java連接,而是直接在這裏把須要的java拖到最上面就行。get
可使用工具命令「/usr/libexec/java_home」來定位JAVA_HOME[即:安裝目錄]:
定位JAVA:
/usr/libexec/java_home
顯示:
/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
另外可使用-V選項列出全部版本的JAVA_HOME:
/usr/libexec/java_home -V
顯示:
Matching Java Virtual Machines (3):
1.7.0_80, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
1.6.0_65-b14-468, x86_64: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
在windows中,javahome的值只是取到版本號的目錄便可,可是在mac中有稍微的不一樣,要去到版本號目錄下的Home目錄,如:
/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
環境變量要在etc目錄下的profile文件中配置,這樣纔是永久的配置。
cd /etc/
vi profile
輸入以下內容:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
保存,退出,使之生效:
source /etc/profile
這樣JAVA_HOME的環境便令配置好了。
一樣的道理,咱們能夠在profile這個文件中進行PATH,CALSSPATH等環境變量的配置。
JDK8 GA以後,小夥伴們喜大普奔,紛紛躍躍欲試,想體驗一下Java8的Lambda等新特性,但是目前Java企業級應用的主打版本仍是JDK6, JDK7。所以,我須要在個人電腦上同時有JDK8,JDK7,JDK6。JDK6和JDK7主要是作一些產品代碼的驗證,以及本身玩一些開源項目,JDK8則純屬嚐鮮,誰叫咱是喜新厭舊的程序員呢!
目標:在命令行下,能夠經過命令'jdk6', 'jdk7','jdk8'輕鬆切換到對應的Java版本, 默認初始設置爲jdk7
export JAVA_6_HOME=/Library/Java/JavaVirtualMachines/jdk1.6.0.jdk/Contents/Home export JAVA_7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0.jdk/Contents/Home export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home export JAVA_HOME=$JAVA_8_HOME
alias jdk8='export JAVA_HOME=$JAVA_8_HOME' alias jdk7='export JAVA_HOME=$JAVA_7_HOME' alias jdk6='export JAVA_HOME=$JAVA_6_HOME'
CNxnliu:Versions xnliu$ java -version java version "1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode) CNxnliu:Versions xnliu$ jdk8 CNxnliu:Versions xnliu$ java -version java version "1.8.0" Java(TM) SE Runtime Environment (build 1.8.0-b132) Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode) CNxnliu:Versions xnliu$