我刚刚在 Mac(运行 OSX Mountain Lion)上安装了 Oracle 的 Java 版本 7u7。但是,运行时java -version
它仍然显示旧版本(6u29)。
我该如何修复这个问题?我是否真的需要修复这个问题?在这种情况下,浏览器(Firefox)将使用哪个版本?当我直接运行 Java 应用程序时将使用哪个版本?
我见过这个问题但这在我的环境中不起作用(可能是因为这个问题是关于 JRE 的,而另一个问题是关于 JDK 的)。在我的环境中,Java 首选项应用程序仅显示 Java 6 版本(32 位和 64 位)。
更新:
which java
指着/usr/bin/java
/usr/bin/java
是指向/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
/System/Library/Frameworks/JavaVM.framework/Versions/
仅包含指向的文件夹A
(超棒版本名称) 。Current
答案1
好的,感谢 MBraedley,我找到了解决方案。
从 Oracle 安装 JRE 不会:
- 更新
java -version
符号链接或添加java
到您的路径。- 在 Java Preferences.app 中显示已安装的 JRE
为了能够执行上述操作,您需要安装 JDK。
答案2
将其放入您的启动脚本(.profile,.bash_profile 等):
导出JAVA_HOME=$(/usr/libexec/java_home)
你可能将 JAVA_HOME 设置为错误的版本。在 Java 7 之前,我
导出JAVA_HOME = /库/ Java /主页/
但我仍然在获取 Java 6。
答案3
是的 有时会发生这种情况,因为你的机器没有反映正确的版本。首先找出你存储环境变量的位置- 1. emacs 2. bash_profile 3. zshrc 文件
设置环境变量的步骤:-
- 从JAVA下载jdk
- 双击安装
现在在你的文件中设置环境变量
a. 对于emacs.profile你可以使用这个关联或者参见下面的截图在此处输入图片描述
b. 对于 ZSH 配置文件设置 -
1. export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home 2. source ~/.zshrc - Restart zshrc OR open another terminal 3. echo $JAVA_HOME - make sure path is set up properly ----> /Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home 4. java -version --> java version "1.8.0_112" Java(TM) SE Runtime Environment (build 1.8.0_112-b16)Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)
一切已设置好现在您可以轻松升级或降级 JAVA 版本。
答案4
您可以同时安装多个版本的 Java JDK。然后,您可以在终端中设置要使用的 JDK 版本。您还可以在 ~/.bash_profile 中将所需的版本设置为默认版本
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*'`