我正在运行OS X Lion。它随JRE6一起提供。我想安装JRE8。我可以在此处下载一个Oracle说是JRE 8的文件:
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
当我在命令行上检查我的Java版本时(安装JRE 8之后),我得到了:
hostname:~ username$ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
hostname:~ username$ which java
/usr/bin/java
hostname:~ username$ ls -al /usr/bin/java
lrwxr-xr-x 1 root wheel 74 Dec 20 2013 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
这与其他人看到的相符。因此,我已按照建议将我的JAVA_HOME添加到〜/ .profile中。此修复程序java -version
现在报告Java8。但是,非命令行应用程序仍在使用Java6。如果运行Eclipse Luna CDT,它将报告:
“ JVM的版本1.6.0_65不适合此产品。需要版本1.7或更高版本。”
这很有道理-当我双击Eclipse时,我的Bash shell甚至没有运行。
我如何实际安装JRE 8?
无奈之下,我安装了JDK。这解决了问题。java -version
给出正确的版本。Eclipse CDT现在可以运行并使用Java8。此外,我不需要设置JAVA_HOME环境变量。
因为我正在运行Eclipse CDT(我在开发C代码,而不是Java),所以我不需要JDK,仅需要JRE。但是,除了安装JRE浏览器插件外,安装JDK还会在此处安装JRE:/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk
如果有人可以告诉我如何在不安装JDK的情况下使桌面Java应用程序(Eclipse,Lotus Notes等)使用Java 8 JRE ,那将是更好的答案。
仅供参考,这是我发现的有关Java实际启动方式的信息:
/usr/bin/java
是的符号链接/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
。
/System/Library/Frameworks/JavaVM.framework/Versions/Current
是指向的符号链接 /System/Library/Frameworks/JavaVM.framework/Versions/A
请注意,/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/bin/java
和/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java
是两个不同的可执行文件(它们的大小不同)。但是,两个都将报告它们是Java版本8。我发现它们将/System/Library/PrivateFrameworks/JavaLaunching.framework/Versions/A/JavaLaunching
框架用于exec
最新安装的Java版本。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句