小编典典

Mac上JDK的路径是什么?

java

我只在工作时使用Mac,我需要将JAVA_HOME设置为JDK的正确路径。我下载了JDK,安装了它,现在到处都找不到。我一直在寻找解决方案的互联网,但是没有文件夹Libraries/ Java。


阅读 267

收藏
2020-09-28

共1个答案

小编典典

该位置已从Java 6(由Apple提供)更改为Java 7及更高版本(由Oracle提供)。找出这种情况的最佳 通用 方法是运行

/usr/libexec/java_home

这是一种本机支持的方法,可以找到默认Java安装以及所有现有替代安装的路径。

如果查看其帮助文本(java_home -h),将会看到可以使用此命令在OS X(java_home --exec ...)上可靠地启动Java程序,并能够明确指定所需的Java版本和体系结构,甚至可以请求用户如果缺少,请安装它。

一种更加行人的方法,但是它将帮助您专门跟踪命令java将解析到的Java安装,如下所示:

  1. which java
    
  2. 如果这样给您类似的信息/usr/bin/java,它是指向实际位置的符号链接,请运行

    ls -l `which java`
    

在我的系统上,此输出

    /usr/bin/java -> /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/bin/java

从中可以读取Java主目录;

  1. 如果usr/bin/java指向另一个符号链接,则递归地应用相同的方法
    ls -l <whatever the /usr/bin/java symlink points to>
    

一个重要的变化是,如果您从安装Apple的Java开始,然后再安装Oracle的安装,则将获得设置。在这种情况下,上面的步骤2将为您提供

/usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Commands/java

那个特定的java二进制文件是一个存根,它将java通过查询JAVA_HOME环境变量来解析实际的调用命令,如果未设置或未指向Java主目录,它将退回到calljava_home。在调试安装程序时,请记住这一点,这一点很重要。

2020-09-28