编者注:这个问题是在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的安装程序不把它放在它真正应该去的地方?我该如何解决这个问题呢?


当前回答

Java8不再可用,brew安装Java8将无法工作。

相反,使用:

brew cask install adoptopenjdk/openjdk/adoptopenjdk8

有关技术细节,请参阅此提交。

请注意,您可能会在多个水龙头中看到有关Cask adoptopenjdk8的问题。这是一个已知的问题,目前正在解决,你可以在这里看到:

https://github.com/AdoptOpenJDK/homebrew-openjdk/issues/106

对于那些不想详细介绍的人,这里有一个总结:

# To install JDK8
brew cask install adoptopenjdk/openjdk/adoptopenjdk8

# To be able to safely run 'brew cleanup'
brew untap adoptopenjdk/openjdk
brew untap caskroom/versions
brew cleanup

其他回答

brew cask install caskroom/versions/java8

对于2021年(也是2022年),这对我来说很管用

brew tap homebrew/cask-versions


brew install --cask adoptopenjdk8

假设:Mac机器,你已经安装了自制软件。

安装桶(Homebrew 0.9.5或更高版本,包括桶,因此跳过此步骤):

$ brew tap caskroom/cask
$ brew tap caskroom/versions

安装最新的java:

$ brew cask install java

安装java 8:

$ brew cask install adoptopenjdk/openjdk/adoptopenjdk8

如果你想安装/管理多个版本,那么你可以使用'jenv':

安装和配置jenv:

$ brew install jenv
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile

将已安装的java添加到jenv:

$ jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
$ jenv add /Library/Java/JavaVirtualMachines/jdk1.11.0_2.jdk/Contents/Home

查看所有已安装的java:

$ jenv versions

上面的命令将给出已安装java的列表:

* system (set by /Users/lyncean/.jenv/version)
1.8
1.8.0.202-ea
oracle64-1.8.0.202-ea

配置你想要使用的java版本:

$ jenv global oracle64-1.6.0.39

设置JAVA_HOME:

$ jenv enable-plugin export

下面的步骤对我很有效。

1)卸载所有jdk

在终端窗口中复制并粘贴下面的命令:

sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefpane

2)安装APPLE jdk。

https://support.apple.com/kb/DL1572?locale=en_US

3)从Oracle下载最新的JDK并安装,对我来说是JDK 1.82

http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

就是这样,它会像魔法一样起作用。

Brew search openjdk 找到一些openjdk公式,在2021年,brew将提供openjdk11和openjdk8作为选项。