首页 文章

如何在Mac OS X上安装特定的JDK?

提问于
浏览
194

我想安装一个特定的JDK(例如最新的) . 为此,我去了JDK下载主页:http://java.sun.com/javase/downloads/index.jsp . 我找了一个Mac版本,但我只是看到Linux,Windows和Solaris的可下载版本有点惊讶...

这是Mac的消息:

“Apple Computer提供他们自己的Java版本 . 使用Apple Update菜单上的软件更新功能来检查您是否拥有适用于Mac的最新Java版本 . ”

OK但是......当我用Mac更新Java时,我有JRE而不是JDK ......

我不明白为什么JDK版本不存在易于下载/可安装(如解压缩的jar?)for Mac ...

15 回答

  • 10

    Mac OS X v10.6(Snow Leopard)开始,您可以在配备32位或64位Intel处理器的Mac上以32位模式运行Java 6 .

    如果您无法升级到Snow Leopard,Soy Latte是适用于Intel 32位的Java 6的预编译版本 .

  • 4

    拥有多个版本的Java(Apple _733788的Mac OS X系统,并为不同的应用程序使用不同的版本)存在各种棘手的问题 . 我花了一些时间撰写我的my experience of installing and configuring various versions of JDK on Mac OS X 10.9.2经验 .

  • 3

    最简单的方法是使用Homebrew . 安装Homebrew然后:

    brew tap caskroom/versions
    brew cask install java7
    

    您可以使用以下命令列出所有可用版本: brew cask search java

  • 1

    在@ Thilo回答的评论中,@ mobibob询问如何在Mac上的.bash_profile中设置JAVA_HOME . 回答:

    export JAVA_HOME=`/usr/libexec/java_home`
    

    这将动态地为JAVA_HOME分配“Java首选项”实用程序的“常规”选项卡中列出的第一个JDK的位置 .

    请参阅Apple技术问答1170:https://developer.apple.com/library/content/qa/qa1170/_index.html

    编辑:

    如果您更喜欢使用括号来反对命令替换,那么这也有效:

    export JAVA_HOME=$(/usr/libexec/java_home)
    
  • 44

    正如消息所说,你必须在Mac上使用Apple,而不是Sun,以获取Java . 据我所知,Apple JDK 6默认安装在Mac OS X 10.6(Snow Leopard)上 . 也许您需要从Mac OS X安装DVD安装开发人员工具(开发工具是OS DVD中的可选安装) .

    见:http://developer.apple.com/java/

    NOTE 2009年10月16日的答案现已过时;您现在可以从Oracle网站上的常规JDK download page获取适用于Mac OS X的JDK .

  • 20

    对于使用任何LION OS X 10.7.X的人

    他们在这里上传了Java SE 6版本1.6.0_26http://support.apple.com/kb/dl1421

  • 3

    我昨天买了一台MacBook Pro(Mac OS X v10.8(Mountain Lion)),默认没有安装JDK ......

    除了javac之外,我还发现它没有安装SVN等软件包 . 事实证明,您可以从Apple developer page获得所有内容(您需要在AppleID中注册) . SVN是"Command Line Tools"包的一部分 .

    Enter image description here

    这是在新MacBook上发生的事情:

    Enter image description here

    Enter image description here

    希望这会帮助像我这样的其他新手;)

  • 4
  • 2

    The explanation is that JDK is a bit specific and does not contain the library tools.jar . 对于我的开发,我需要这个库和Mac 's JDK doesn' t提供它:

    (参见http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html

    tools.jar不存在 . 通常位于此处的类将包含在classes.jar中 . 依赖于tools.jar存在的脚本需要相应地重写 .

    太糟糕了!

  • 0

    使用-source 1.5 -target 1.5进行编译(在JDK 6环境中)将仅使用1.5及之前的语言元素 . 大 . 但无论如何,6中没有语言变化 . 这种方法的问题(在Mac上使用1.6)是使用AFTER 1.5之后的类仍然会编译,因为它们存在于rt.jar中 . 因此,可以在1.5 env中运行并获得未找到类的异常,而在编译时没有预先警告 . 我用javax.swing.event.RowSorterEvent / Listener发现了这个问题 . 两者都进入“自1.6以来”但未被-source 1.5捕获

  • 3

    如果你安装了brew,下面的cmd会很有帮助:

    brew cask安装java

  • 1

    我认为这个其他Stack Overflow问题可能会有所帮助:

    How to get JDK 1.5 on Mac OS X

    它基本上说如果你需要使用旧版本的JDK(例如1.4或1.5)编译或执行Java应用程序,你可以使用1.6来实现它,因为它是向后兼容的 . 为此,您需要在javac选项或IDE中添加参数 -source 1.5 和/或 -target 1.5 .

  • 3

    JDK是Java Development Kit(用于开发Java软件) .

    JRE是Java运行时环境(用于运行任何.jar文件'Java software') .

    JDK里面包含一个JRE .

    在Windows上更新Java时,它会自动更新JRE .

    在Mac上,你没有JRE分开,但是在JDK中,所以当你更新Java时,它会更新你JDK里面的JRE;它不会为您安装JDK . 你需要从其他地方获得它 .

  • 1

    检查这个非常棒的工具sdkman,轻松管理您的jdk和其他jdk相关工具!

    例如

    $sdk list java
    $sdk install java <VERSION>
    
  • 10

    通常,您无法在Mac上安装其他版本的Java,而不是Apple通过软件提供的版本更新 . 如果您需要Java 6,则必须具有64位Intel计算机 . 如果您至少拥有OS X 10.4,则应始终安装Java 5和1.4以及1.3 .

    如果你有非常多的肘部油脂,并且愿意使用测试版软件,你可以在OS X下安装OpenJDK,但我认为你不想去那里 .

相关问题