Проверьте предустановленные версии Java
Вы можете найти подробную информацию обо всех установленных версиях Java в macOS с помощью следующей команды.
/usr/libexec/java_home -V
Matching Java Virtual Machines (3):
17.0.8.1 (x86_64) "Eclipse Adoptium" - "OpenJDK 17.0.8.1" /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
17.0.8.1 (x86_64) "Eclipse Adoptium" - "OpenJDK 17.0.8.1" /Users/********/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
1.8.0_302 (x86_64) "Eclipse Temurin" - "Eclipse Temurin 8" /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
последняя строчка означает что это версия запускается по умолчанию
другой способ проверить версию запускаемую по умолчанию в JAVA_HOME можно с помощью следующей команды.java --version
Результат:openjdk 17.0.8.1 2023-08-24
OpenJDK Runtime Environment Temurin-17.0.8.1+1 (build 17.0.8.1+1)
OpenJDK 64-Bit Server VM Temurin-17.0.8.1+1 (build 17.0.8.1+1, mixed mode, sharing)
Установите JAVA_HOME в macOS 10.15 и новее.
В macOS Catalina (версия 10.15) и более новых версиях macOS в качестве оболочки по умолчанию используется Zsh. Zsh выполняет ~/.zshrc
скрипт при запуске нового сеанса. Вы можете добавить свой код из этого файла в переменную среды JAVA_HOME. Как только пользователь войдет в систему или откроет новую оболочку, переменная будет автоматически установлена сценарием.
Используйте одну из следующих команд, чтобы установить JAVA_HOME в соответствии с требуемой версией Java:
- Используйте версию Java по умолчанию:
echo export "JAVA_HOME=\$(/usr/libexec/java_home)" >> ~/.zshrc
Установите конкретную версию Java, указав ее как:
echo export "JAVA_HOME=\$(/usr/libexec/java_home -v 1.8)" >> ~/.zshrc
Чтобы использовать другую версию Java, просто замените 1.8 на нужную вам версию, например 11, 15, 17 или 18.
По непонятной причине echo export "JAVA_HOME=\$(/usr/libexec/java_home)" >> ~/.zshrc
у меня не работает, файл с нужной строкой создается, но он не отрабатывает
Помогает только если я держу в папке по умолчанию только одну JDK
Папка по умолчанию –
/Users/********
/Library/Java/JavaVirtualMachines/temurin-17.jdk