我已经安装了从oracle网站下载的JDK 7u7。但是安装完成后,终端仍然显示java版本6

$java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)

你知道为什么Java 7没有出现吗?

答: 好的,问题已经解决了。以下是答案: 我发现我的终端有一个.bash_profile, java主变量被设置为1.6

export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home"

所以这就是每次我打开新终端窗口时导致问题的行。 只要去掉这条线就能解决问题。您仍然需要遵循@aleroot所说的,但如果这对您不起作用,请检查.bash_profile(或.bashrc)设置文件,以查看您之前是否导出过任何java版本。


当前回答

更新

brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk/openjdk/adoptopenjdk8

https://stackoverflow.com/a/28635465

旧版本 对我来说,最简单、最干净的方法是使用下面描述的自制程序安装Java:

https://stackoverflow.com/a/28635465

brew update
brew cask install java

其他回答

六世~ / . bash_profile

add

export JAVA_HOME= ' /usr/libexec/ JAVA_HOME -v 1.7 '

这告诉你的/usr/bin/java链接目标使用最新的Java 7包安装

/ Library / Java / JavaVirtualMachines

因此对于JDK 1.7.0_17 JAVA_HOME将是:

/ Library / Java / JavaVirtualMachines jdk1。7 . 0_17 jdk /地点/ Home。

注意:最近在这个领域有很多变化,Mac OS X从苹果自己的系统集成Java包转移到基于Oracle的Java包。上述解决方案在Mac OS X 10.8.2运行良好

如果你的机器上有几个Java版本,你想在运行时动态地选择它,也就是说,在我的情况下,我有两个版本:

ls -la /Library/Java/JavaVirtualMachines
drwxr-xr-x  3 root  wheel    96B Nov 16  2014 jdk1.7.0_71.jdk/
drwxr-xr-x  3 root  wheel    96B Mar  1  2015 jdk1.8.0_31.jdk/

您可以通过修改/etc/profile内容来更改它们。只需在文件末尾添加(或修改)以下两行:

export JAVA_HOME=YOUR_JAVA_PATH/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

在我的情况下,如果我想使用,它应该如下所示:

Java 7:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

Java 8:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

保存文件后,请运行source /etc/profile,它应该可以工作。以下是我使用第一种和第二种选择时的结果:

Java 7:

java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)

Java 8:

java -version 
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)

如果您的java文件夹位于不同的位置,这个过程是类似的。

在我的案例中,问题是Oracle将它安装到与我习惯的位置不同的位置。

从Oracle下载:http://java.com/en/download/mac_download.jsp?locale=en

Verify that it's installed properly by looking in System Prefs: Command-Space to open Spotlight, type 'System Preferences', hit enter. Click Java icon in bottom row. After the Java Control Panel opens, click 'Java' tab, 'View...', and verify that your install worked. You can see a 'Path' there also, which you can sub into the commands below in case they are different than mine. Verify that the version is as you expect (sub in your path as needed): /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -version Create link from /usr/bin/java to your new install sudo ln -fs /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java /usr/bin/java Sanity check your version: java -version

我所做的

export JAVA_HOME=`/usr/libexec/java_home`

这解决了我的Java 8问题。

之前:

java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)

后:

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

更新

brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk/openjdk/adoptopenjdk8

https://stackoverflow.com/a/28635465

旧版本 对我来说,最简单、最干净的方法是使用下面描述的自制程序安装Java:

https://stackoverflow.com/a/28635465

brew update
brew cask install java