Вопрос или проблема
Мой дистрибутив Linux – Debian 12.7.0, 64-битный, английский.
Я модифицировал руководство под названием Как установить Java JDK 21 или OpenJDK 21 на Debian 12, чтобы иметь возможность “установить”/использовать последнюю стабильную версию OpenJDK 23.0.1 (для информации, официальные репозитории Debian содержат OpenJDK 17, который неактуален для моего использования.)
Я нажал на ссылку https://download.java.net/java/GA/jdk23.0.1/c28985cbf10d4e648e4004050f8781aa/11/GPL/openjdk-23.0.1_linux-x64_bin.tar.gz, чтобы скачать программное обеспечение на свой компьютер.
Затем я извлек архив, используя следующую команду:
tar xvf openjdk-23.0.1_linux-x64_bin.tar.gz
На моем устройстве была создана новая директория. Она называется jdk-23.0.1
Я скопировал указанную директорию в /usr/local
sudo cp -r jdk-23.0.1 /usr/local
Я создал новый скрипт источника, чтобы установить окружение Java, выполнив следующую команду:
su -i
tee -a /etc/profile.d/jdk23.0.1.sh<<EOF
> export JAVA_HOME=/usr/local/jdk-21
> export PATH=$PATH:$JAVA_HOME/bin
> EOF
После выполнения вышеуказанного я открыл jdk23.0.1.sh с помощью FeatherPad, и содержимое показало следующее:
export JAVA_HOME=/usr/local/jdk-23.0.1
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/bin
Согласно руководству, я ввел следующую команду:
source /etc/profile.d/jdk23.0.1.sh
Чтобы проверить версию OpenJDK на моем компьютере, я ввел:
java --version
Появилось сообщение об ошибке:
bash: java: command not found
Не могли бы вы показать мне, что я сделал неправильно? Спасибо.
PS. Я очень внимательно следовал указанному руководству, и все равно появилось сообщение об ошибке.
Ответ или решение
Ошибка bash: java: command not found
в вашем случае указывает на то, что командный интерпретатор bash не может найти исполняемый файл Java. Давайте проанализируем вашу установку и шаги, которые вы предприняли.
1. Проверка настроек переменных окружения
Вы упомянули, что создали скрипт для установки переменных окружения, который, судя по вашему описанию, находится по пути /etc/profile.d/jdk23.0.1.sh
. Однако в этом скрипте есть ошибка:
export JAVA_HOME=/usr/local/jdk-21
Эта строка ссылается на неверный путь к установленному JDK. Правильный путь должен быть:
export JAVA_HOME=/usr/local/jdk-23.0.1
Обновите содержимое вашего скрипта, чтобы оно соответствовало следующему:
export JAVA_HOME=/usr/local/jdk-23.0.1
export PATH=$PATH:$JAVA_HOME/bin
Не забудьте также перезагрузить изменения с помощью команды:
source /etc/profile.d/jdk23.0.1.sh
2. Проверка установленного Java
Для проверки, была ли корректно установлена Java, выполните команду:
ls -l /usr/local/jdk-23.0.1/bin
Эта команда должна вывести список файлов в директории bin
, включая исполняемых файл java
. Если файл java
отсутствует, это может указывать на неполную или неправильную установку JDK.
3. Проверка результата
После внесения изменений проверьте, правильно ли теперь установлен Java, выполнив команду:
java --version
Если все сделано верно, вы должны увидеть информацию о версии Java.
4. Перезагрузка системы
Иногда переменные окружения не обновляются до полной перезагрузки системы. Если после вышеописанных изменений ваше окружение Java по-прежнему не работает, попробуйте перезагрузить компьютер:
sudo reboot
Заключение
Ошибка bash: java: command not found
может возникнуть по нескольким причинам, но чаще всего это связано с неправильными путями в переменных окружения. Надеюсь, данный разбор и рекомендации помогут вам успешно настроить Java на Debian 12. Если возникнут дополнительные вопросы, не стесняйтесь обращаться за помощью.