编者注:这个问题是在2014年提出的,答案可能已经过时了。
我想用最新的JavaFX编程,它需要Java 8。我使用的是IntelliJ 13 CE和Mac OS X 9 Mavericks。我运行了Oracle的Java 8安装程序,文件看起来像是在
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk
但以前的版本是
/System/Library/Java/JavaFrameworks/jdk1.6....
不知道为什么最新的安装程序把这个放在/Library而不是/System/Library(也不知道有什么区别)。但是/usr/libexec/java_home找不到1.8,所以我找到的所有关于如何设置当前java版本的帖子都不起作用。我已经尝试添加了一个符号链接,使它看起来像1.8在/System/Library中…路径,但没有用。/usr/libexec/java_home -V仍然只列出旧的Java 1.6。
讽刺的是,在“系统首选项”下的“Java”控制面板只显示Java 1.8!
为什么Oracle的安装程序不把它放在它真正应该去的地方?我该如何解决这个问题呢?
我有同时使用Java 7和Java 8的应用程序,并且必须一直来回运行。
我使用Johan写的这个脚本:
http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/
现在可以在启动时设置它,或者在启动后调用脚本。
安装Mac版JDK
Java 7
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
Java 8
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
更新推荐! !:
使用jenv https://www.jenv.be/和自制。
然后它只是jenv global oracle6401.6.0.39和它的集合。
使用Homebrew安装
在2018年10月3日之前,Homebrew Cask中可用的Java版本确实是Oracle JVM。但是现在,它已经更新为OpenJDK。请确保更新Homebrew,然后您将看到可供安装的最新版本。
1. 如果你还没有安装Homebrew。确保已更新:
brew update
2. 添加桶龙头,如果你还没有(或者你在步骤3中没有看到旧的Java版本):
brew tap homebrew/cask-versions
3.对于AdoptOpenJDK版本,添加tap:
brew tap adoptopenjdk/openjdk
这些桶经常更改其Java版本,并且可能还有其他带有额外Java版本的水龙头。
4. 寻找可安装的版本:
brew search java
或AdoptOpenJDK版本:
brew search jdk
5. 检查将要安装的版本的详细信息:
brew cask info java
或AdoptOpenJDK版本:
brew cask info adoptopenjdk
6. 安装特定版本的JDK,如java11、adoptopenjdk8,或者当前只安装java或adoptopenjdk。例如:
**brew cask install java**
**brew cask install java8**
**brew cask install java11**
您也可以使用旧版本的完全限定路径:
brew cask install homebrew/cask-versions/java11
在2022年,你可以只使用酿造
brew install openjdk@8
也许你需要更新PATH env:
export PATH="/usr/local/opt/openjdk@8/bin:$PATH"
为未来试一试的人,胜过酝酿的人
curl -s "https://get.sdkman.io" | bash
然后打开一个新的shell和try列表,看看你可以安装什么;-)
sdk list java
在写这篇文章的时候,安装java 8你可以使用:
sdk install java 8.0.322-tem
注意:更新install命令以匹配运行sdk list java中的一些现有标识符show