繁体   English   中英

如何查看 Java JDK 是否安装在 Mac 上?

[英]How do I check if the Java JDK is installed on Mac?

你如何检查 Java SDK 是否安装在 Mac 上?

有命令行吗?

终端中的javac -version就可以了

您可以利用OS X上的java_home帮助程序二进制文件来查找所需内容。

要列出已安装 JDK 的所有版本:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    1.8.0_51, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
    1.7.0_79, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home

要请求特定 JDK 版本的 JAVA_HOME 路径,您可以执行以下操作:

$ /usr/libexec/java_home -v 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home

$ /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home

您可以像这样在脚本中利用上述命令:

REQUESTED_JAVA_VERSION="1.7"
if POSSIBLE_JAVA_HOME="$(/usr/libexec/java_home -v $REQUESTED_JAVA_VERSION 2>/dev/null)"; then
    # Do this if you want to export JAVA_HOME
    export JAVA_HOME="$POSSIBLE_JAVA_HOME"
    echo "Java SDK is installed"
else
    echo "Did not find any installed JDK for version $REQUESTED_JAVA_VERSION"
fi

您也许可以执行 if-else 并检查多个不同版本的 java。

如果您更喜欢 XML 输出,java_home 也有一个 -X 选项以输出 XML。

$ /usr/libexec/java_home --help
Usage: java_home [options...]
    Returns the path to a Java home directory from the current user's settings.

Options:
    [-v/--version   <version>]       Filter Java versions in the "JVMVersion" form 1.X(+ or *).
    [-a/--arch      <architecture>]  Filter JVMs matching architecture (i386, x86_64, etc).
    [-d/--datamodel <datamodel>]     Filter JVMs capable of -d32 or -d64
    [-t/--task      <task>]          Use the JVM list for a specific task (Applets, WebStart, BundledApp, JNI, or CommandLine)
    [-F/--failfast]                  Fail when filters return no JVMs, do not continue with default.
    [   --exec      <command> ...]   Execute the $JAVA_HOME/bin/<command> with the remaining arguments.
    [-R/--request]                   Request installation of a Java Runtime if not installed.
    [-X/--xml]                       Print full JVM list and additional data as XML plist.
    [-V/--verbose]                   Print full JVM list with architectures.
    [-h/--help]                      This usage information.

输入终端:

which javac

它应该向你展示类似的东西

/usr/bin/javac

下面的命令效果很好:

javac -version

我还通过导航到 Mac 上的 Java 文件夹进行了手动验证

/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk

如果未安装 java, /usr/bin/java_home工具返回 1。

因此,您可以通过以下方式检查是否安装了 java:

/usr/libexec/java_home &> /dev/null && echo "installed" || echo  "not installed"

只需输入javac 如果已安装,您将获得使用信息,否则它只会询问您是否要安装 Java。

确保您正确定义了项目的 JDK 并重新启动 IntelliJ(完全重新启动)。

  • 打开终端。
  • 运行命令查看:

    javac -version

  • 您也可以通过转到特定位置然后检查来手动验证。 为此,请在 mac 终端中运行以下命令

    cd /Library/Java/JavaVirtualMachines/

然后再次在终端中运行ls命令。 现在您可以看到您的计算机中是否存在 jdk 版本和包。

如果您使用的是 Mac OS Big Sur,那么您的 Java 安装可能会一团糟。 我在这篇文章中找到了有关如何解决问题的信息: https : //knasmueller.net/how-to-install-java-openjdk-15-on-macos-big-sur

  1. https://jdk.java.net/15/上下载 JDK 的 .tar.gz 文件
  2. 导航到下载文件夹,并运行以下命令(移动 .tar.gz 文件,解压并在解压后将其删除):
sudo mv openjdk-15.0.2_osx-x64_bin.tar.gz /Library/Java/JavaVirtualMachines/
cd /Library/Java/JavaVirtualMachines/
sudo tar -xzf openjdk-15.0.2_osx-x64_bin.tar.gz
sudo rm openjdk-15.0.2_osx-x64_bin.tar.gz

注意:它可能是 15.0.3 或更高版本,具体取决于您的下载日期。

  1. 运行/usr/libexec/java_home -v15并复制输出
  2. 将此行添加到您的.bash_profile.zshrc文件中,具体取决于您使用的 shell。 您的主目录中可能只有这些文件之一( ~/.bash_profile~/.zshrc )。
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-15.0.2.jdk/Contents/Home
  1. 保存更改并通过运行使它们立即生效: source ~/.bash_profilesource ~/.zshrc
  2. 检查 java 是否正常工作 - 运行java -v

在 MAC 上通过执行命令找到你的 JDK 路径。

/usr/libexec/java_home

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM