java - 如何在 Mac 上安装替代 JDK 而不覆盖当前版本

标签 java macos java-7 dmg

此处为 Mac(Yosemite 10.10.5)。我的所有项目都使用 JDK 8,最近刚刚继承了一个“较旧的”基于 Java 7 的项目。我只想从 Oracle's archived JDKs 下载 Java 7 JDK ,但它似乎只能作为 DMG(自动安装程序)使用。

恐怕如果我下载这个 DMG,它会自动安装它并使 Java 7 成为我的默认安装。然而,我只希望本地文件系统上有解压的 JDK,这样我就可以在其中运行我的 Java 7 应用程序(通过在本地运行应用程序时指定 JDK 的完整路径)。

关于我的选择有什么想法吗?

最佳答案

有关这方面的大部分信息可以在 Oracles notes on installation 中找到。

我相信您正在寻找的具体内容位于

确定 JDK 的默认版本:

一个系统上可以安装多个 JDK,任意数量。

通过命令行启动Java应用程序时,系统使用默认的JDK。 JRE 的版本可能与 JDK 的版本不同。

您可以通过在终端窗口中键入 java -version 来确定默认的 JDK 版本。如果安装的版本是 8u6,您将看到一个包含文本 1.8.0_06 的字符串。例如:

% java -version
java version "1.8.0_06-ea"
Java(TM) SE Runtime Environment (build 1.8.0_06-ea-b13)
Java HotSpot(TM) 64-Bit Server VM (build 23.2-b04, mixed mode)

要运行不同版本的 Java,请指定完整路径,或使用 java_home 工具:

% /usr/libexec/java_home -v 1.8.0_06 --exec javac -version

关于java - 如何在 Mac 上安装替代 JDK 而不覆盖当前版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32595472/

相关文章:

javascript - HTML 无法在 iOS/OSX 项目中加载 css 和 js 文件

xml - Perl, "Can' t定位对象方法 "new"

java - 为什么switch on String会编译成两个switch

c# - 如何确定数学表达式的求值顺序?

java - 如何向每个 JTree 节点添加不同的 JComboBox?

java - 如何配置 JUnit 测试套件?

xcode - NSTableView 的滚动条背景

java - 这里 API : How do I request PDE data for Safety_Alerts layer without getting Bad Request?

java - 如何在 Ubuntu 中将 Java 版本 1.7 更改为 1.8?

JAVA_HOME 环境变量没有指向 JDK 或 JRE