我已经在 Mac 上安装了 Java 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
在命令行中我将 Java 版本设置为
export JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home'
现在当我这样做java -version
它显示正确的 Java 版本 'java 1.7'
但是,当我打开一个新终端并执行时java -version
,
它再次显示错误的 Java 版本'java 1.8'
// 我需要为某些应用程序使用 Java 1.7
如何确保每次打开终端时都显示正确的 Java 版本?
答案1
听起来你已经安装了两者(OSX Yosemite iirc 默认安装 1.8)尝试将 1.7 添加到你的 java --alternatives 中或使用定义的路径(符号链接非常适合这种情况)
答案2
尝试
which java
这应该会告诉您可执行文件的位置。我同意 linuxdev2013 的观点,您很可能安装了多个版本。我猜想较新的版本可能在您的路径中。
答案3
您可以在终端内动态切换已安装的 JDK 版本,使用方法如下;
export JAVA_HOME=`/usr/libexec/java_home -v '1.6*'`
export JAVA_HOME=`/usr/libexec/java_home -v '1.7*'`
export JAVA_HOME=`/usr/libexec/java_home -v '1.8*'`
(使用相同的命令来~/.bash_profile
设置所需的默认值!)