我在Mac OSX上安装多个Java版本时遇到了困难,无法理解实际路径与链接之间的关系。通常在Windows中,如果我在计算机上安装了多个版本,则可以使用我想要的任何版本的路径。但是在Mac OS X中,我了解到存在一些称为链接的东西被指向CurrentJDK,如果我想使用不同的版本,我需要更改链接到CurrentJdk,对吗?但是让我感到困惑的是,如下所示,所有版本都指向同一个CurrentJDK,这意味着所有版本都指向当前版本?我本来以为只有其中一个会指向CurrentJDK,我可以将其更改为我需要的任何一个版本,但这里并非如此。我只需要知道如何找到每个版本的bin(命令)文件夹路径,以便我可以使用它来指向CurrentJDK?同时告诉我如何更改链接到CurrentJDK。
$ java -version
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07-334-10M3326)
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02-334, mixed mode)
$ pwd
/System/Library/Frameworks/JavaVM.framework/Versions
$ ls -l
lrwxr-xr-x 1 root wheel 5 Mar 20 11:12 1.3 -> 1.3.1
drwxr-xr-x 3 root wheel 102 Dec 2 2009 1.3.1
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.4 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.4.2 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.5 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.5.0 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.6 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Mar 20 11:12 1.6.0 -> CurrentJDK
drwxr-xr-x 10 root wheel 340 Mar 20 11:13 A
lrwxr-xr-x 1 root wheel 1 Mar 20 11:12 Current -> A
lrwxr-xr-x 1 root wheel 59 Mar 20 11:12 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
which java
命令来识别当前正在使用的 Java 版本。然后运行/usr/libexec/java_home -version <你想要的版本,例如 1.8>
。它将打印出相关的 Java 主目录文件夹。 - S.M.Mousavi