
Java остается одним из ключевых языков программирования для разработки серверных приложений, мобильных приложений и инструментов автоматизации. На Linux установка Java требует понимания различий между OpenJDK и Oracle JDK, а также корректной настройки переменных окружения для системного и пользовательского использования.
Для большинства дистрибутивов Linux оптимальным выбором является OpenJDK. На Ubuntu или Debian установка начинается с команды sudo apt update, после чего выполняется sudo apt install openjdk-17-jdk. После завершения установки важно проверить версию с помощью java -version, чтобы убедиться, что система использует корректную версию.
На CentOS и Fedora установка производится через dnf или yum. Например, команда sudo dnf install java-17-openjdk-devel устанавливает полный комплект JDK, включая компилятор javac и утилиты для разработки. Настройка переменной JAVA_HOME выполняется добавлением строки export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java)))) в файл ~/.bashrc и применением изменений командой source ~/.bashrc.
После установки рекомендуется настроить альтернативные версии Java через update-alternatives, чтобы при необходимости быстро переключаться между несколькими JDK. Это обеспечивает стабильность работы приложений, зависящих от конкретной версии Java.
Проверка установленной версии Java в терминале
После установки Java важно убедиться, что система использует нужную версию. Для этого откройте терминал и выполните следующие команды:
-
which java– определяет путь к исполняемому файлу Java. Если установлено несколько версий, это помогает понять, какая именно используется по умолчанию. Например:/usr/bin/java
-
update-alternatives --config java– на системах Debian/Ubuntu позволяет выбрать активную версию Java, если установлено несколько вариантов. Терминал выведет список доступных путей с индексами для переключения.
java version "17.0.8" 2025-07-15 LTS Java(TM) SE Runtime Environment (build 17.0.8+7-LTS) Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+7-LTS, mixed mode)
javac 17.0.8
Если команды java -version или javac -version возвращают ошибку «command not found», это означает, что Java не установлена или путь к ней не добавлен в переменную окружения PATH. В таком случае необходимо либо установить JDK/JRE заново, либо добавить путь к уже установленной версии в PATH.
Для проверки всех установленных версий Java используйте:
sudo update-alternatives --list java– покажет все доступные бинарные файлы Java.sudo update-alternatives --list javac– покажет все версии компилятора.
Эти команды обеспечивают точный контроль над используемой версией и позволяют избежать конфликтов между JDK и JRE разных выпусков.
Выбор подходящей версии JDK для Linux

Для серверных приложений рекомендуется выбирать LTS-версии, например, Java 17 или Java 21, так как они получают обновления безопасности и исправления багов минимум на 8 лет. Версии 18–20 подходят только для тестирования или краткосрочных проектов, так как поддержка ограничена.
Если приоритет – стабильность и совместимость с пакетом дистрибутива, выбирайте OpenJDK из репозиториев вашего Linux: Ubuntu/Debian используют apt с пакетами openjdk-17-jdk или openjdk-21-jdk, Fedora/RHEL – dnf/yum с java-17-openjdk-devel или java-21-openjdk-devel.
Для разработчиков с потребностью в специфичных инструментах Oracle, таких как Java Flight Recorder или Mission Control, логичен выбор Oracle JDK. Для корпоративных серверов с длительным жизненным циклом стоит рассмотреть Amazon Corretto 17 или 21, так как они предоставляют бесплатные обновления безопасности и сертифицированы для работы в продуктивной среде.
Архитектура системы также важна: x86_64 – универсальная, ARM64 – популярна на серверах и Raspberry Pi. Необходимо скачать JDK, соответствующий вашей архитектуре. Учитывайте, что 32-битные версии JDK устарели и поддерживаются ограниченно.
Итоговый выбор зависит от задач: стабильный сервер – OpenJDK 17 или Corretto 17; экспериментальные функции – последние нерелизные версии; интеграция с инструментами Oracle – Oracle JDK. Убедитесь, что выбранная версия поддерживается вашим дистрибутивом и соответствует архитектуре системы.
Скачивание пакета JDK с официального сайта
Для корректной работы Java на Linux необходимо скачать JDK с официального сайта Oracle или с открытых дистрибутивов OpenJDK. Рекомендуется выбирать версию, совместимую с используемым дистрибутивом и требованиями приложений.
Пошаговый процесс скачивания:
| Шаг | Описание |
|---|---|
| 1 | Перейдите на официальный сайт Oracle JDK или OpenJDK. |
| 2 | Выберите нужную версию JDK. Для большинства современных приложений актуальна версия 17 или 21 LTS. |
| 3 | Выберите пакет для Linux. Обычно доступны форматы tar.gz и rpm. Для дистрибутивов Debian/Ubuntu подходит tar.gz, для CentOS/RHEL – rpm. |
| 4 | Нажмите на ссылку загрузки и сохраните файл в удобную директорию, например, /home/username/Загрузки. |
| 5 | Проверьте контрольную сумму файла. На сайте указаны SHA256 значения, которые можно сверить командой sha256sum имя_файла. |
| 6 | После проверки файла можно переходить к распаковке и установке JDK на систему. |
Использование официальных источников гарантирует актуальность безопасности, корректность бинарников и совместимость с Linux-средой.
Установка Java через пакетный менеджер apt

Обновите список пакетов командой sudo apt update для получения актуальных версий. Для установки OpenJDK 17 используйте sudo apt install openjdk-17-jdk. Если требуется только среда выполнения, достаточно sudo apt install openjdk-17-jre.
Проверить установленную версию Java можно командой java -version. Для настройки альтернативной версии используйте sudo update-alternatives --config java и выберите нужный путь к исполняемому файлу.
После установки JDK для компиляции программ используйте javac. Проверку доступности компилятора проводят командой javac -version. Если система не находит команды, убедитесь, что путь /usr/lib/jvm/java-17-openjdk-amd64/bin добавлен в переменную окружения PATH.
Для автоматического обновления OpenJDK используйте sudo apt upgrade. Для установки других версий JDK, например 11 или 20, замените номер версии в команде apt install openjdk-11-jdk или openjdk-20-jdk. Каждый пакет включает как JDK, так и JRE для соответствующей версии.
Установка Java через пакетный менеджер yum/dnf

На системах с RHEL, CentOS или Fedora установка Java выполняется через yum или dnf. Для начала обновите кеш репозиториев командой sudo dnf check-update или sudo yum check-update.
Для установки OpenJDK 17 выполните sudo dnf install java-17-openjdk-devel или sudo yum install java-17-openjdk-devel. Пакет -devel включает компилятор javac и инструменты разработки. Для только запуска приложений используйте java-17-openjdk.
Проверка установленной версии производится командой java -version. Для смены активной версии используйте sudo alternatives --config java, если установлено несколько версий.
На старых версиях RHEL/CentOS 7 может потребоваться подключение репозитория EPEL или репозитория AdoptOpenJDK для получения актуальных версий Java.
После установки убедитесь, что переменная JAVA_HOME корректно указывает на путь установки. Его можно определить через dirname $(dirname $(readlink -f $(which java))) и добавить в /etc/profile.d/java.sh.
Настройка переменных среды JAVA_HOME и PATH
Переменная JAVA_HOME указывает системе на директорию установки JDK. Чтобы определить путь, выполните команду sudo update-alternatives --config java и используйте путь до папки /usr/lib/jvm/java-XX-openjdk-amd64, где XX – версия Java.
Для постоянной настройки откройте файл ~/.bashrc или ~/.zshrc и добавьте строки:
export JAVA_HOME=/usr/lib/jvm/java-XX-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
После редактирования выполните source ~/.bashrc для применения изменений без перезагрузки терминала.
Проверка корректности выполняется командой echo $JAVA_HOME и java -version. Путь должен совпадать с установленной JDK, а команда java -version – показывать актуальную версию.
Если на системе установлено несколько версий Java, используйте update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-XX-openjdk-amd64/bin/java 1 для добавления новой версии и update-alternatives --config java для переключения.
Изменения в JAVA_HOME и PATH корректно применяются к любым сборочным инструментам, включая Maven и Gradle, без необходимости дополнительной конфигурации. Это гарантирует, что все Java-программы будут использовать одну и ту же версию JDK.
Проверка корректности установки Java

После установки Java на Linux важно убедиться, что система правильно распознает JDK и JRE, а также что переменные окружения настроены корректно.
- Проверка версии Java:
Откройте терминал и выполните команду:
java -versionopenjdk version "17.0.8" 2024-07-15 - Проверка JDK:
Для проверки JDK используйте:
javac -version - Проверка переменной окружения JAVA_HOME:
Проверьте текущее значение:
echo $JAVA_HOMEЗначение должно указывать на корневую папку JDK, например
/usr/lib/jvm/java-17-openjdk-amd64. Если переменная пустая, добавьте её в~/.bashrcили~/.zshrc:export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64Затем примените изменения:
source ~/.bashrc - Тест запуска Java-программы:
Создайте файл
HelloWorld.javaс содержимым:public class HelloWorld { public static void main(String[] args) { System.out.println("Java установлена корректно"); } }Скомпилируйте и запустите:
javac HelloWorld.javajava HelloWorld - Проверка альтернатив:
На системах с несколькими версиями Java используйте:
update-alternatives --config javaУбедитесь, что выбранная версия совпадает с установленной и соответствует
JAVA_HOME.
Эти шаги позволяют подтвердить полную функциональность установленной Java и корректность системных настроек.
Удаление старых версий Java и управление несколькими версиями

Для проверки установленных версий Java выполните команду sudo update-alternatives --config java. Она покажет список доступных исполняемых файлов с указанием текущей активной версии.
Удаление устаревших пакетов OpenJDK на Debian/Ubuntu осуществляется командой sudo apt remove openjdk-8-jdk openjdk-11-jdk. На CentOS/RHEL используется sudo yum remove java-1.8.0-openjdk java-11-openjdk. Удаляйте только версии, которые не требуются для рабочих приложений.
Для сохранения нескольких версий Java одновременно рекомендуется использовать update-alternatives. Добавление новой версии выполняется через:
sudo update-alternatives --install /usr/bin/java java /путь/к/java 1
Затем можно переключаться между версиями командой:
sudo update-alternatives --config java
Для систем с несколькими инструментами JDK, например, javac и jar, настройте альтернативы аналогично:
sudo update-alternatives --install /usr/bin/javac javac /путь/к/javac 1
Чтобы убедиться, что нужная версия активна, используйте java -version и javac -version. Для автоматического применения версии по умолчанию можно настроить переменные окружения:
export JAVA_HOME=/путь/к/желаемой/java
export PATH=$JAVA_HOME/bin:$PATH
Регулярная очистка старых версий уменьшает риск конфликтов и освобождает дисковое пространство, особенно при наличии нескольких установок JDK. Для контроля используйте dpkg -l | grep openjdk или rpm -qa | grep java, чтобы видеть полный список пакетов.
Вопрос-ответ:
Как проверить, установлена ли Java на Linux?
Откройте терминал и выполните команду java -version. Если Java установлена, вы увидите номер версии и информацию о сборке. Если система не распознаёт команду, значит Java не установлена или её путь не добавлен в переменную окружения PATH.
Какие версии Java лучше использовать на Linux для разработки?
Для большинства проектов подходят версии Java 11 или Java 17, так как они поддерживаются большинством современных фреймворков и библиотек. Java 8 также используется, но для новых проектов рекомендуется выбирать более свежие версии из-за улучшений производительности и безопасности.
Как установить Java через пакетный менеджер на Ubuntu?
На Ubuntu можно использовать apt. Сначала обновите список пакетов командой sudo apt update, затем установите OpenJDK, например, командой sudo apt install openjdk-17-jdk. После установки убедитесь в корректной настройке командой java -version.
Можно ли установить несколько версий Java на одном Linux?
Да, Linux позволяет иметь несколько версий Java одновременно. Для переключения между ними используют команду update-alternatives. Например, sudo update-alternatives --config java покажет список доступных версий и позволит выбрать активную для системы.
Что делать, если после установки Java команда java не работает?
Скорее всего, путь к Java не добавлен в PATH. Найдите папку с установленной Java, например /usr/lib/jvm/java-17-openjdk-amd64/bin, и добавьте её в переменную окружения с помощью команды export PATH=$PATH:/usr/lib/jvm/java-17-openjdk-amd64/bin. После этого команда java -version должна корректно показать установленную версию.
