Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код: Skills Начать
Рубрики
Linux VPS

Как установить OpenJDK на Ubuntu 22.04: Полное пошаговое руководство

Java по-прежнему остаётся одним из наиболее широко используемых языков программирования в мире, обеспечивая работу всего — от корпоративных приложений и разработки под Android до конвейеров обработки больших данных и микросервисов. В основе любой среды разработки Java лежит Java Development Kit (JDK) — и OpenJDK является золотым стандартом, бесплатной реализацией с открытым исходным кодом, которой доверяют разработчики по всему миру.

Это руководство проведёт вас через каждый шаг установки, настройки и тестирования OpenJDK на Ubuntu 22.04 LTS, независимо от того, работаете ли вы на локальной машине или облачном сервере. Если вы запускаете свои проекты на тарифном плане VPS Hosting от AlexHost, вы получите преимущества хранилища на базе NVMe для более быстрой компиляции Java, полный root-доступ для неограниченной настройки и корпоративную защиту от DDoS для обеспечения безопасности ваших приложений.

Почему стоит использовать OpenJDK на Ubuntu 22.04?

OpenJDK (Open Java Development Kit) — это официальная эталонная реализация Java SE (Standard Edition). В отличие от проприетарных альтернатив, OpenJDK:

  • Полностью бесплатен и имеет открытый исходный код — никаких лицензионных сборов или ограничений использования
  • Активно поддерживается — при поддержке Oracle, Red Hat, Amazon и более широкого сообщества
  • Полностью совместим — практически со всеми Java-фреймворками, включая Spring Boot, Quarkus, Micronaut и Apache Maven
  • Доступен в нескольких LTS-версиях — включая OpenJDK 11 и OpenJDK 17, оба из которых нативно поддерживаются в официальных репозиториях Ubuntu 22.04

Ubuntu 22.04 LTS (Jammy Jellyfish) является идеальной базовой ОС для разработки на Java благодаря долгосрочному циклу поддержки, стабильности и отличной доступности пакетов. В сочетании с высокопроизводительной средой VPS Hosting вы получаете готовую к производственному использованию платформу Java с первого дня.

Предварительные требования

Прежде чем начать, убедитесь, что у вас есть следующее:

  • Сервер или VPS под управлением Ubuntu 22.04 LTS
  • Учётная запись пользователя с привилегиями sudo (или root-доступом)
  • Активное подключение к интернету
  • Базовые знания командной строки Linux

> Совет AlexHost: Все тарифные планы AlexHost VPS поставляются с Ubuntu 22.04 в качестве доступного образа ОС, полным root-доступом и включённым по умолчанию SSH — что делает их идеальными для подобной настройки.

Шаг 1: Обновление системы

Перед установкой любого нового программного обеспечения необходимо обновить индекс пакетов и применить все ожидающие обновления. Это предотвращает конфликты зависимостей и гарантирует, что вы работаете с последними, наиболее защищёнными версиями системных пакетов.

Откройте терминал и выполните следующие две команды:

sudo apt update
sudo apt upgrade -y
  • sudo apt update — Загружает последние списки пакетов из всех настроенных репозиториев
  • sudo apt upgrade -y — Обновляет все установленные пакеты до их новейших доступных версий

Дождитесь завершения процесса, прежде чем продолжить. Если включено обновление ядра, вам может быть предложено перезагрузиться — сделайте это при необходимости.

Шаг 2: Проверка доступных версий OpenJDK

Официальные репозитории Ubuntu 22.04 включают несколько версий OpenJDK. Чтобы просмотреть полный список доступных версий перед установкой, выполните:

sudo apt search openjdk

Это вернёт список всех устанавливаемых пакетов OpenJDK. Наиболее актуальные из них:

ПакетОписание
openjdk-11-jdkOpenJDK 11 — Long-Term Support (LTS)
openjdk-17-jdkOpenJDK 17 — Последняя LTS-версия для Ubuntu 22.04
openjdk-18-jdkOpenJDK 18 — Краткосрочный выпуск
openjdk-11-jreТолько Java Runtime Environment (без компилятора)
openjdk-17-jreТолько Java Runtime Environment (без компилятора)

JDK и JRE — в чём разница?

  • JDK (Java Development Kit): Включает компилятор Java (javac), отладчик и все инструменты разработки. Устанавливайте его, если вы пишете или компилируете код на Java.
  • JRE (Java Runtime Environment): Включает только то, что необходимо для *запуска* предварительно скомпилированных Java-приложений. Устанавливайте его, если вы развёртываете приложение, но не разрабатываете его.

Для целей разработки всегда устанавливайте пакет JDK.

Шаг 3: Установка OpenJDK

Вариант A — Установка OpenJDK 11 (LTS)

OpenJDK 11 — это выпуск с долгосрочной поддержкой, который по-прежнему широко используется в корпоративных средах и требуется многими устаревшими фреймворками и инструментами.

sudo apt install openjdk-11-jdk -y

Вариант B — Установка OpenJDK 17 (Рекомендуемая LTS)

OpenJDK 17 — это текущая рекомендуемая LTS-версия для новых проектов. Она включает значительные улучшения производительности, новые языковые функции (записи, запечатанные классы, сопоставление с образцом) и улучшенную безопасность по сравнению с OpenJDK 11.

sudo apt install openjdk-17-jdk -y

Вариант C — Установка обеих версий

Вы можете установить несколько версий OpenJDK параллельно и переключаться между ними по мере необходимости (описано в шаге 5):

sudo apt install openjdk-11-jdk openjdk-17-jdk -y

APT автоматически разрешит и установит все необходимые зависимости.

Шаг 4: Проверка установки

После завершения установки убедитесь, что Java правильно установлена, проверив версию:

java -version

Ожидаемый вывод для OpenJDK 17:

openjdk version "17.0.x" 2023-xx-xx
OpenJDK Runtime Environment (build 17.0.x+xx-Ubuntu-xubuntu1)
OpenJDK 64-Bit Server VM (build 17.0.x+xx-Ubuntu-xubuntu1, mixed mode, sharing)

Также убедитесь, что компилятор Java доступен:

javac -version

Ожидаемый вывод:

javac 17.0.x

Если обе команды возвращают информацию о версии без ошибок, установка OpenJDK выполнена успешно.

Шаг 5: Настройка версии Java по умолчанию (несколько установок)

Если у вас установлено более одной версии OpenJDK, инструмент update-alternatives в Ubuntu позволяет определить, какая версия используется по умолчанию в масштабе всей системы.

Выполните следующую команду:

sudo update-alternatives --config java

Вы увидите вывод, аналогичный следующему:

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode

Press <enter> to keep the current choice[*], or type selection number:

Введите номер, соответствующий предпочтительной версии по умолчанию, и нажмите Enter. Вы также можете выполнить ту же команду для javac, чтобы установить компилятор по умолчанию:

sudo update-alternatives --config javac

Шаг 6: Установка переменной среды JAVA_HOME

Многие Java-приложения, инструменты сборки (Maven, Gradle) и серверы приложений (Tomcat, WildFly) используют переменную среды JAVA_HOME для определения местоположения установки JDK. Правильная её настройка является критически важным шагом конфигурации.

Определение пути установки JDK

Сначала определите точный путь к установленному JDK:

sudo update-alternatives --list java

Это выведет что-то вроде:

/usr/lib/jvm/java-17-openjdk-amd64/bin/java

Ваш путь JAVA_HOME — это всё, что стоит перед /bin/java, то есть в данном случае: /usr/lib/jvm/java-17-openjdk-amd64

Установка JAVA_HOME для текущего пользователя

Чтобы установить JAVA_HOME только для текущего пользователя, отредактируйте файл .bashrc:

nano ~/.bashrc

Прокрутите до конца файла и добавьте следующие строки (при необходимости скорректируйте номер версии):

# Java Environment Variables
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin

Сохраните файл (Ctrl + O, затем Enter) и выйдите (Ctrl + X). Примените изменения к текущему сеансу:

source ~/.bashrc

Установка JAVA_HOME для всей системы (все пользователи)

Чтобы сделать JAVA_HOME доступным для всех пользователей системы, отредактируйте вместо этого /etc/environment:

sudo nano /etc/environment

Добавьте следующую строку:

JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"

Сохраните и закройте файл, затем перезагрузите его:

source /etc/environment

Проверка правильности установки JAVA_HOME

echo $JAVA_HOME

Ожидаемый вывод:

/usr/lib/jvm/java-17-openjdk-amd64

Шаг 7: Тестирование установки Java с помощью примера программы

Лучший способ убедиться, что всё работает от начала до конца, — написать, скомпилировать и запустить простую программу на Java.

Создание исходного файла

nano HelloWorld.java

Добавление кода Java

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World! OpenJDK is working correctly.");
    }
}

Сохраните файл и выйдите из редактора.

Компиляция программы

Используйте компилятор Java (javac) для компиляции исходного файла в байт-код:

javac HelloWorld.java

Это создаёт файл HelloWorld.class в том же каталоге. Если вы не видите ошибок, компиляция прошла успешно.

Запуск программы

Выполните скомпилированную программу с помощью среды выполнения Java:

java HelloWorld

Ожидаемый вывод:

Hello, World! OpenJDK is working correctly.

Поздравляем — ваша установка OpenJDK на Ubuntu 22.04 полностью функциональна!

Шаг 8: Поддержание OpenJDK в актуальном состоянии

Патчи безопасности и исправления ошибок для OpenJDK выпускаются регулярно. Чтобы поддерживать установку в актуальном состоянии, периодически выполняйте:

sudo apt update && sudo apt upgrade -y

Менеджер пакетов APT в Ubuntu автоматически включает обновления OpenJDK, когда они становятся доступными в официальных репозиториях.

Бонус: Запуск Java-приложений в производственной среде на AlexHost

После настройки среды разработки вы можете захотеть развернуть свои Java-приложения в производственной среде. Вот несколько рекомендаций:

Выбор подходящей хостинговой инфраструктуры

  • VPS Hosting — Идеально подходит для запуска микросервисов Spring Boot, REST API и лёгких Java веб-приложений. Полный root-доступ позволяет точно настраивать размеры кучи JVM, параметры сборки мусора и системные ресурсы.
  • Выделенные серверы — Лучший выбор для высоконагруженных Java-приложений, крупномасштабных корпоративных систем или приложений, требующих максимальных ресурсов CPU и RAM без совместного использования.
  • GPU Hosting — Идеально подходит для рабочих нагрузок машинного обучения на Java или конвейеров обработки данных, которые выигрывают от ускорения GPU.

Защита вашего приложения

  • Установите SSL/TLS-сертификат для шифрования трафика к вашему Java веб-приложению. AlexHost предлагает SSL-сертификаты для всех тарифных планов хостинга, обеспечивая HTTPS с минимальной настройкой.
  • Используйте обратный прокси (NGINX или Apache) перед вашим сервером приложений Java (Tomcat, Jetty или встроенный Spring Boot) для повышения безопасности и производительности.

Использование панели управления для упрощения администрирования

Если вы предпочитаете графический подход к управлению серверной средой, рассмотрите VPS с cPanel или изучите другие панели управления VPS, доступные на AlexHost, чтобы упростить администрирование сервера наряду с развёртыванием Java-приложений.

Устранение распространённых проблем

java: command not found после установки

Обычно это означает, что бинарный файл отсутствует в вашем PATH. Выполните:

export PATH=$PATH:/usr/lib/jvm/java-17-openjdk-amd64/bin

Затем постоянно добавьте эту строку в ~/.bashrc.

JAVA_HOME не распознаётся Maven или Gradle

Убедитесь, что JAVA_HOME указывает на корневой каталог JDK (а не на подкаталог bin). Проверьте с помощью:

ls $JAVA_HOME/bin/javac

Если файл существует, путь указан верно.

Используется неправильная версия Java

Используйте update-alternatives --config java (шаг 5) для переключения на правильную версию, затем проверьте с помощью java -version.

Ошибки отказа в доступе

Убедитесь, что вы используете sudo для команд системного уровня и что ваш пользователь имеет соответствующие разрешения на сервере.

Итоги

Вот краткий справочник по всему, что рассматривается в этом руководстве:

ШагКомандаНазначение
Обновление системыsudo apt update && sudo apt upgrade -yУбедиться, что система актуальна
Поиск версийsudo apt search openjdkНайти доступные пакеты OpenJDK
Установка JDK 17sudo apt install openjdk-17-jdk -yУстановить OpenJDK 17 LTS
Проверка Javajava -versionПодтвердить установку
Установка версии по умолчаниюsudo update-alternatives --config javaВыбрать JDK по умолчанию
Установка JAVA_HOMEРедактировать ~/.bashrc или /etc/environmentНастроить переменную среды
Тестирование установкиjavac HelloWorld.java && java HelloWorldПроверить работу от начала до конца

Заключение

Установка OpenJDK на Ubuntu 22.04 — это простой процесс, который даёт вам мощную, готовую к производственному использованию среду разработки Java без каких-либо лицензионных затрат. Следуя этому руководству, вы:

  • Обновили систему и установили OpenJDK 11 или 17 из официальных репозиториев Ubuntu
  • Проверили установку и настроили версию Java по умолчанию
  • Установили переменную среды JAVA_HOME для совместимости с инструментами сборки и серверами приложений
  • Успешно скомпилировали и выполнили программу на Java, чтобы убедиться в правильной работе всего

Независимо от того, создаёте ли вы Spring Boot API, микросервис на основе Gradle или приложение для обработки данных, запуск его на высокопроизводительной платформе VPS Hosting от AlexHost обеспечивает быстрое хранилище NVMe для скорости компиляции, надёжную работоспособность и функции безопасности, которых заслуживают ваши Java-приложения.

LiteSpeed VPS Безопасность
VPS Windows
Linux

Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код: Skills Начать
Быстрый доступ к информации
Быстрый доступ к информации

Сэкономьте время и получите быстрый ответ на ваш вопрос

Решайте проблемы сами
Решайте проблемы сами

База знаний содержит подробные руководства, позволяющие самостоятельно решать технические задачи.

Повышение квалификации
Повышение квалификации

Используя базу знаний, вы расширяете свои знания о веб-хостинге и связанных темах

Иллюстрации и диаграммы
Иллюстрации и диаграммы

Многие статьи сопровождаются иллюстрациями и диаграммами, что упрощает понимание сложных процессов и настроек.

Полезные приемы
Полезные приемы

Вы найдете полезные советы и трюки для повышения производительности вашего сайта или веб-приложения.

Актуальность заданных тем
Актуальность заданных тем

Информация в базе знаний регулярно обновляется, чтобы отражать последние изменения и тенденции в области ИТ-инфраструктуры и услуг AlexHost.

Не нашли нужную тему? Есть отличное решение

Уважаемые клиенты! Ваш комфорт — наш приоритет!

Кроме того, мы даем вам возможность активно участвовать в создании нашей базы знаний. Если у вас есть темы или вопросы, которые вы хотели бы включить в нашу базу данных, дайте нам знать! Мы готовы написать подробные статьи и руководства на основе ваших потребностей.

Мы стремимся сделать ваш опыт работы с AlexHost максимально удобным и эффективным, и ваш вклад в базу знаний помогает нам достичь этой цели. Связаться с нами ->
info@alexhost.com и дайте нам знать, как мы можем сделать ваше пребывание у нас еще лучше.

Solution Image