【问题标题】:Switching between multiple java versions在多个 java 版本之间切换
【发布时间】:2015-09-18 07:51:46
【问题描述】:

操作系统:OSX Yosemite

我使用jEnv在java版本之间切换。

Asiris-Mac-Book-Pro:~ Asiri$ jenv global 1.6 

Asiris-Mac-Book-Pro:~ Asiri$ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)


Asiris-Mac-Book-Pro:~ Asiri$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home

Asiris-Mac-Book-Pro:~ Asiri$ /usr/libexec/java_home -V
Matching Java Virtual Machines (4):
    1.7.0_67, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_67.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
    1.5.0_30-b03, x86_64:   "J2SE 5.0"  /System/Library/Java/JavaVirtualMachines/1.5.0/Contents/Home

/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home

为什么会这样?

这个配置直到好像用的是java 1.7。

如何正确切换到java 1.6?

【问题讨论】:

    标签: java macos osx-yosemite


    【解决方案1】:

    Java Runtime Environmen (JRE)Java Development Kit (JDK) 不同。

    你正在运行JRE 1.6

    不清楚你想做什么;有关您的项目范围的更多信息可能会有所帮助 - 所以回答您的问题:

    1. 发生这种情况是因为您混淆了两个 Java 发行版
    2. 1.7 版是 Java 开发工具包
    3. 您使用 Java Runtime Environment 1.6 作为默认值

    【讨论】:

    • 我想用java 1.6来做一个项目。 1.6 JDK。怎么做
    • @AsiriLiyanaArachchi,我不使用jEnv,因为很容易在~/.bash_profile 中添加一行,它会做同样的事情。如果你想使用1.6 作为默认值,那么你可以添加这个导出:export JAVA_HOME=`/usr/libexec/java_home -v 1.6`。此命令还将显示帮助:/usr/libexec/java_home -h
    • jEnv 允许在本地为一个目录设置它,这就是我想要使用它的原因。谢谢您的帮助。我会试试的。