Contents

如何找到JAVA_HOME

1. 简介

在这个快速教程中,我们将学习如何在 Windows、Mac 和 Linux 上找到*JAVA_HOME*

众所周知,JAVA_HOME是一个环境变量,我们常用来定位 java 可执行文件,比如 java 和 javac

2. 查找JAVA_HOME的特定于 Windows 的方法

如果我们使用 Windows 作为操作系统,首先我们需要打开命令行(cmd)并输入:

echo %JAVA_HOME%

如果在我们的环境中定义了JAVA_HOME ,那么上面的命令就会打印出来。

或者显示java可执行文件的位置,我们可以尝试:

where java

3. macOS 和 Linux 特定的查找 JAVA_HOME的方法

如果我们使用 macOS 或 Linux,我们可以打开终端并输入:

echo $JAVA_HOME

如果在我们的环境中定义了JAVA_HOME ,那么上面的命令就会打印出来。

或者我们可以尝试:

which java

这可能只是向我们显示*/usr/bin/java*,因为它是一个符号链接,所以它真的不是很有帮助。为了解决这个问题,我们将使用dirnamereadlink

对于 Linux:

dirname $(dirname $(readlink -f $(which javac)))

对于 macOS:

$(dirname $(readlink $(which javac)))/java_home

此命令打印当前使用的 java 文件夹。

4. 使用Java查找JAVA_HOME

如果我们能够自己运行java,那么我们也有一种几乎独立于平台的方式:

java -XshowSettings:properties -version

运行此命令会输出许多属性,其中一个是java.home

不过,要解析它,我们仍然需要一个特定于平台的工具。

对于 Linux 和 macOS ,我们将使用grep

java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home' 

对于 Windows,我们将使用findstr

java -XshowSettings:properties -version 2>&1 | findstr "java.home"