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

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

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


当前回答

MacOS BigSur

在.zshrc文件下添加以下内容。如果.zshrc不存在,请创建并添加。

export JAVA_HOME=`/usr/libexec/java_home`

其他回答

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

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

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

sudo find / -name java

如果安装了多个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

如果您正在使用sdkman

您可以使用sdk-home-java<installed.java_version>进行检查

$  sdk home java 8.0.252.j9-adpt
/Users/admin/.sdkman/candidates/java/8.0.252.j9-adpt

您可以使用

$ sdk list java

你可以使用

/usr/libexec/java_home

命令,以了解安装Java的路径。