我刚刚从这里下载了Mac OS 10.7.5上的Java 7u17,然后成功安装了它。为了进行一些JNI编程,我需要知道Java在Mac上的安装位置。

我以为在/Library/Java/JavaVirtualMachines/文件夹中会有一个名为1.7.0.jdk的文件夹,但后来我发现该文件夹是空的。这通过在终端中运行ls/Library/Java/JavaVirtualMachines/来确认。我尝试过搜索它,以确定它是否安装在其他地方,但这似乎没有任何结果。

有人能告诉我我的Mac上安装了Java吗?


当前回答

事实证明,我实际上安装了Java 7 JRE,而不是JDK。这里有正确的下载链接。安装后,jdk1.7.0jdk将出现在JavaVirtualMachines目录中。

其他回答

在终端shell上使用/usr/libexec/java_home-v 1.8命令来确定java 1.8主目录的位置

如果您只想查找最新版本Java的主目录,请省略该版本。例如/usr/libexec/java_home

用于:

操作系统X:10.11.6爪哇语:8

我确认了@Morrie的回答。

   export JAVA_HOME=/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home;

但如果你在运行容器,你的生活会更轻松

使用unix find函数查找已安装的java。。。

sudo find / -name java

我刚刚为JavaSE7的版本21安装了JDK,发现它安装在与苹果的Java6不同的目录中。它位于/Library/Java。。。而不是在/System/Library/Java中。。。。运行/usr/libexec/java_home-v 1.7与-v 1.6将证实这一点。

如果安装了多个Java版本,请使用:

$/usr/libexec/java_home--详细

or:

$/usr/libexec/java_home-V(这是大写的V!)

列出所有版本和架构。

样本输出:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (4):
    12.0.1 (x86_64) "Oracle Corporation" - "Java SE 12.0.1" /Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk/Contents/Home
    1.8.202.08 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_282 (x86_64) "Amazon" - "Amazon Corretto 8" /Users/username/Library/Java/JavaVirtualMachines/corretto-1.8.0_282/Contents/Home
    1.8.0_202 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk/Contents/Home