【问题标题】:MacOS JDK path. Where is it? [duplicate]MacOS JDK 路径。它在哪里? [复制]
【发布时间】:2015-04-24 19:13:08
【问题描述】:

我最近开始使用 MacOS,我认为我的 IDE 没有找到正确的 JDK 路径。这就是我所做的。

最初,当我得到我的 Mac 时,我从 Apple 的网站安装了 JDK(我认为如果我得到那个版本就可以工作)。直到我尝试将项目导入 Eclipse 并说需要 JDK 7 (Apple 的版本仅为 6 版)之前,它似乎一直有效。

然后我从 Oracle 下载了 JDK 8 并进行了安装。我知道在这一步之后我必须做this。但是我不确定这个新安装的位置(无论出于何种原因,当这个程序安装时它不会显示任何类型的目录,所以我不知道它去了哪里)。

在“jdk”中搜索我找到的安装目录:

  • 它不在应用程序中(这是有道理的,但这就是 我已安装的所有其他内容)。

  • 我尝试搜索 Macintosh HD,但什么也没看到(我觉得这里出了点问题,为什么这不起作用?)。 Macintosh HD 是 MacOS 上最接近根目录的目录吗?

【问题讨论】:

  • 我在发布我的问题之前搜索了该网站,并在发布我的问题之前查看了建议的帖子。 “重复”的答案对我不起作用。
  • 对于任何查看此问题的模组,我想指出此问题已标记为重复,但此处发布的解决方案不在重复帖子中,这是有效的解决方案为了我。这是解决此问题的官方请求(不,我不知道如何解决,但将其标记为重复对需要此解决方案的人没有帮助)。

标签: java macos


【解决方案1】:

要在 MacOS 上查找 JDK 的当前主目录,请在终端中键入:

/usr/libexec/java_home

在我的机器上,这会产生:

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

但请注意,您的版本可能不同,因此请运行命令,不要复制粘贴结果。

要查找所有现有的 JDK,包括以前的版本:

/usr/libexec/java_home -V

在我的机器上,这会产生:

 1.8.0_40,x86_64:“Java SE 8”/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
    1.7.0_71,x86_64:“Java SE 7”/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
    1.7.0_67,x86_64:“Java SE 7”/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home

现在,确保您的 Eclipse 至少看到其中一个。打开它的首选项:

如果您的 JRE 没有出现在那里,请添加它。如果是这样,请转到项目的构建路径并确保它也出现在那里。在 Project→Properties 中,您应该看到:

【讨论】:

  • 就在您发布此内容之前,我尝试了命令“which java”,它以这种方式给了我一个目录。但它似乎仍然不起作用。您能否确认这是否是可靠地找到正确 JDK 目录的有效方法?
  • @OKGimmeMoney 只为您提供java 命令的路径,而不是 IDE 通常需要的java homejava 命令是一个符号链接。如果您想使用不同的版本(用于测试目的等),您需要访问实际 Java 主目录中的版本,或更改当前的 Java 主目录,因此了解 Java 主目录很重要。
  • 好的,我看到 /usr/libexec/java_home 存在,但我该怎么做才能让 Eclipse 识别它?创建新项目(以及在现有项目中)时出现此错误:无法解析类型 java.lang.Object。它是从所需的 .class 文件中间接引用的
  • 好的,我已经扩展了我的答案。
【解决方案2】:

Java 8 JDK 的当前更新 45 安装到

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

【讨论】:

    猜你喜欢
    • 2017-04-27
    • 2012-03-06
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 2011-09-05
    • 2013-08-11
    • 1970-01-01
    相关资源
    最近更新 更多