java版本告诉我是8,但jdk是1.7-OSX10.9.x
有些事情我不明白-我在OSX 10.9.5上,当我在终端运行java版本告诉我是8,但jdk是1.7-OSX10.9.x,java,macos,Java,Macos,有些事情我不明白-我在OSX 10.9.5上,当我在终端运行java-version时,我得到: java版本“1.8.0_40” Java(TM)SE运行时环境(构建1.8.0_40-b25) Java HotSpot(TM)64位服务器虚拟机(构建25.40-b25,混合模式) 但在my/Library/Java/JavaVirtualMachines/dir中,我看到了3个JDK: jdk1.7.0_71.jdk jdk1.7.0_75.jdk jdk1.7.0_76.jdk Ecli
java-version
时,我得到:
java版本“1.8.0_40”Java(TM)SE运行时环境(构建1.8.0_40-b25)
Java HotSpot(TM)64位服务器虚拟机(构建25.40-b25,混合模式) 但在my/Library/Java/JavaVirtualMachines/dir中,我看到了3个JDK:
- jdk1.7.0_71.jdk
- jdk1.7.0_75.jdk
- jdk1.7.0_76.jdk
java-version
会说我在运行8呢?如果在该目录中不存在Java8的jdk,它又怎么可能呢
困惑。TIA.在you.path\u profile文件夹中,将JAVA\u HOME导出到JDK8文件夹中,JAVA-version是由您JVN生成的,因为在我看来,将您的JAVA\u HOME仍然指向JDK1.7执行以下操作
$ vim .bash_profile
export JAVA_HOME=YOUR_JDK8_PATH
$ source .bash_profile
您询问的版本实际上是
Java运行时环境(JRE)
版本,而不是Java开发工具包(JDK)
版本;它们是两种不同的东西。您正在运行Java8(JRE
),但如果有其他运行时可用,您可以有选择地选择其他运行时
如果要查看当前可能拥有的所有Java版本,请执行以下操作:
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
1.8.0_45, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
1.6.0_65-b14-466.1, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-466.1, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
要查看哪一个当前作为默认值运行:
$ which java ; java -version
/usr/bin/java
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
要查看安装了哪些jdk
:
$ ls /Library/Java/JavaVirtualMachines/
jdk1.8.0_45.jdk
Java运行时环境(JRE)
JRE允许您运行用Java编程语言编写的应用程序。与JDK一样,它包含Java虚拟机
机器(JVM),包含Java平台API的类,以及
支持文件。与JDK不同,它不包含开发
编译器和调试器等工具
Java开发工具包(JDK)
JDK是一个用于构建的开发环境
使用Java编程的应用程序、小程序和组件
语言JDK包含了一些有用的工具,用于开发和测试用Java编程语言编写并在计算机上运行的程序
Java平台
由于Eclipse依赖于
JDK
中的工具,因此他们肯定会使用您安装的JDK
,因为仅使用JRE
是无法工作的。谢谢您的回复,但我不确定我是否遵循了-我想使用Java 7。如果“YOUR_JDK8_PATH”路径不在前面提到的目录:/Library/Java/JavaVirtualMachines/,我不相信它存在。尝试在shell中查找/-名称“Jdk”,您将获得Jdk的所有路径。谢谢您的帮助-我想我假设,因为我下载了Java 7 Jdk,我的JRE也将是7。但也许JRE 8是作为我的IT部门的标准构建的一部分安装的?谁知道呢。在JDK 7和JRE 8的基础上出现任何问题吗?您不应该有任何问题,因为Java 8向后兼容较旧版本的JRE和JDK。在极少数情况下,可能会出现例外情况,但除非您使用的是已被弃用一段时间的产品,否则您可能不会遇到任何问题。以下是有关此主题的更多信息: