Введение
JAVA_HOME — это переменная среды, используемая различными приложениями на основе Java для поиска JVM (JDK) в любой системе. Точно так же Maven также требовал, чтобы JAVA_HOME был правильно настроен в вашей системе.
Проблемы:
Когда я попытался проверить версию Maven на нашем ПК с macOS, я получил следующую ошибку на выходе:
mvn --version
The JAVA_HOME environment variable is not defined correctly,
this environment variable is needed to run this program
Отвечать:
Поскольку сообщение об ошибке ясно показывает, что переменная среды JAVA_HOME не установлена на моем ПК. Таким образом, простое решение - правильно настроить его. Используйте следующие шаги, чтобы решить эту проблему.
macOS 10.5 (Catalina) и более поздние версии используют Zsh в качестве оболочки по умолчанию. Предыдущая версия использует оболочку Bash. Итак, сначала нужно определить оболочку, которая работает в вашей системе. Откройте терминал и введите:
echo $SHELL
Для Zsh вывод будет /bin/zsh , а для оболочки Bash вывод будет /bin/bash .
Теперь установите переменную среды JAVA_HOME
в соответствии с активной оболочкой:
- Zsh (/bin/zsh): отредактируйте файл
~/.zshenv
и добавьте следующий код: - Bash (/bin/bash): Отредактируйте файл
~/.bash_profile
и добавьте следующий код:
export JAVA_HOME=$(/usr/libexec/java_home)
export JAVA_HOME=$(/usr/libexec/java_home)
Это должно решить проблему в вашей системе. Для подтверждения откройте новую оболочку и напечатайте значение переменной среды JAVA_HOME, а также подтвердите с помощью команды, что вы получили сообщение об ошибке:
echo $JAVA_HOME
mvn --version
Примечание. Если проблема сохраняется после правильной установки переменной среды, убедитесь, что другие сценарии не переопределяют ее. Ознакомиться с порядком выполнения скрипта можно здесь .
Вывод
В этом руководстве мы увидели, как решить следующую проблему: переменная среды JAVA_HOME определена неправильно, эта переменная среды необходима для запуска этой программы.