Перейти к основному содержимому

Как найти JAVA_HOME

· 2 мин. чтения

1. Введение

В этом кратком руководстве мы узнаем, как найти JAVA_HOME в Windows, Mac и Linux.

Как мы все знаем, 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, что на самом деле не очень полезно, поскольку это символическая ссылка. Чтобы разгадать это, мы будем использовать dirname и readlink.

Для 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"

5. Вывод

В этой небольшой статье мы узнали, как найти JAVA_HOME в разных операционных системах.

Если это не сработало, возможно, мы неправильно установили переменную JAVA_HOME при установке Java.