На очереди сегодня (04.06.2026) и сформировать себе заметку, как поставить OpenJDK 17 на систему Ubuntu 22.04 LTS Server со всеми нюансами, так сказать задокумментировать себе весь процесс, т.к. эта заметка в свою очередь ляжет для последующих проектов. Проект — это набор кирпичиков, где каждый занимает свое положение.

На заметку: Я стараясь намеренно по возможности указывать что и из какого следует.

На заметку: Системе Ubuntu 22.04 LTS Server в процессе потребуется доступ в интернет

Шаг №1: Операционная система развернута из образа: ubuntu-22.04.2-live-server-amd64.iso в среде виртуализации Proxmox 7.4-3

Шаг №2: После произведена предварительная настройка системы на последующее использование:

sudo rm -Rf /var/lib/apt/lists

cat /etc/update-manager/release-upgrades | grep Prompt

Prompt=lts

sudo sed -i '/Prompt/s/lts/never/' /etc/update-manager/release-upgrades

cat /etc/update-manager/release-upgrades | grep Prompt

Prompt=never

sudo apt-get update && sudo apt-get upgrade -y && sudo apt dist-upgrade -y

sudo rm -f /etc/localtime

sudo ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime

sudo locale-gen en_US.UTF-8

echo "LC_ALL="en_US.UTF-8"" | sudo -s tee /etc/default/locale

echo "LANG="en_US.UTF-8"" | sudo tee -a /etc/default/locale

echo "LANGUAGE="en.US.UTF-8"" | sudo tee -a /etc/default/locale

sudo reboot

Шаг №3: Проверяю сперва наличие OpenJDK в дефолтных репозитариях системы Ubuntu 22.04 LTS Server:

ekzorchik@srv-us2204a:~$ apt-cache search openjdk-17-jdk

openjdk-17-jdk - OpenJDK Development Kit (JDK)

openjdk-17-jdk-headless - OpenJDK Development Kit (JDK) (headless)

Шаг №4: Произвожу установку OpenJDK из дефолтных репозитариев:

ekzorchik@srv-us2204a:~$ sudo apt-get install -y openjdk-17-jdk

Шаг №5: Если в системе одновременно установлены Java 11 и Java 17, переключаем систему на использование Java 17:

ekzorchik@srv-openfire2:~$ sudo update-alternatives --config java

There are 3 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

  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number: нажимаю клавишу "0"

ekzorchik@srv-openfire2:~$

и

sudo update-alternatives --config javac

ekzorchik@srv-openfire2:~$ sudo update-alternatives --config javac

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

  Selection    Path                                          Priority   Status

------------------------------------------------------------

* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/javac   1711      auto mode

  1            /usr/lib/jvm/java-17-openjdk-amd64/bin/javac   1711      manual mode

  2            /usr/lib/jvm/java-8-openjdk-amd64/bin/javac    1081      manual mode

Press <enter> to keep the current choice[*], or type selection number:  нажимаю клавишу "0"

ekzorchik@srv-openfire2:~$

Шаг №6: Прописываю путь в переменные окружения:

sudo nano /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64/bin/java"
source /etc/environment
echo $JAVA_HOME
/usr/lib/jvm/java-17-openjdk-amd64/bin/java

Шаг №7: Проверяю какая версия java & javac:

ekzorchik@srv-us2204a:~$ java -version

openjdk version "17.0.19" 2026-04-21

OpenJDK Runtime Environment (build 17.0.19+10-1-22.04.2-Ubuntu)

OpenJDK 64-Bit Server VM (build 17.0.19+10-1-22.04.2-Ubuntu, mixed mode, sharing)

ekzorchik@srv-us2204a:~$ javac -version

javac 17.0.19

ekzorchik@srv-us2204a:~$

Итого я данной заметкой сделал себе небольшое ознакомление для последующего.

На этом пока все, с уважением автор блога, кстати если будет что-то в процессе, то все дополнения будут отражены путем дополнения заметки.