一尘不染

Mac OS X和多个Java版本

java

如何在MacOS上安装其他Java?我安装了jdk8,效果很好。但现在出于开发目的,我需要安装jdk7。当尝试通过DMG文件安装旧版本时,我得到警告,已经安装了较新版本的Java,并且安装程序退出。

/usr/libexec/java_home -verbose
Matching Java Virtual Machines (1):
    1.8.0_20, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home

   /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home

除此以外,如何安装jdk7?


阅读 479

收藏
2020-03-12

共1个答案

一尘不染

在Mac上管理多个Java版本的最干净方法是使用Homebrew

在内Homebrew,使用:

  • homebrew-cask 安装Java版本
  • jenv 管理Java的安装版本

如http://hanxue-it.blogspot.ch/2014/05/installing-java-8-managing-multiple.html所示,这些是要遵循的步骤。

  1. 安装自制软件
  2. 安装自制的Jenv
  3. 安装自制酒桶
  4. 使用桶安装特定的Java版本(请参见下面的“自制桶版本”一节)
  5. 添加此版本供jenv管理
  6. 检查版本是否由jenv正确管理
  7. 对你需要的每个Java版本重复步骤4至6

homebrew-cask versions

homebrew/cask-versions使用以下方法将水龙头添加到自制啤酒中:

brew tap homebrew/cask-versions

然后,你可以查看所有可用的版本:

brew search java

然后,你可以安装所需的版本:

brew cask install java7
brew cask install java6

并像往常一样将它们添加到由jenv管理。

jenv add <javaVersionPathHere>

我认为这是最干净,最简单的方法。

如Mac OS X 10.6.7 Java Path Current JDK中所述,要注意的另一重要事项是:

对于不同类型的JDK或安装,你将具有不同的路径

你可以使用/usr/libexec/java_home -V查看安装版本的路径,请参阅如何检查Mac上是否安装了Java JDK?

在Mac OS X Mavericks上,我发现如下:

1)内置JRE默认值: /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

2)从Apple下载的JDK: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/

3)从Oracle下载的JDK: /Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home

2020-03-12