Как установить Java с помощью Apt на Ubuntu 22.04

Введение

Java и JVM (виртуальная машина Java) необходимы для многих видов программного обеспечения, включая Tomcat, Jetty, Glassfish, Cassandra и Jenkins.

В этом руководстве вы установите различные версии среды выполнения Java (JRE) и комплект разработчика Java (JDK), используя apt. Вы установите OpenJDK, а также официальный JDK от Oracle. Затем вы выберете версию, которую хотите использовать для своих проектов. По завершении вы сможете использовать JDK для разработки программного обеспечения или использовать среду выполнения Java для запуска программного обеспечения.

Разверните свои веб-приложения из GitHub, используя Платформу приложений DigitalOcean. Позвольте DigitalOcean заниматься масштабированием вашего приложения.

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

Чтобы следовать этому руководству, вам понадобятся:

  • Один сервер Ubuntu 22.04 настроен в соответствии с руководством по начальной настройке сервера Ubuntu 22.04, включая использование sudo-пользователя, отличного от root, и настройку брандмауэра.

Шаг 1 — Установка Java

Установка Java включает два основных компонента. JDK предоставляет необходимые инструменты для разработки на Java, такие как компилятор и отладчик. JRE используется для выполнения Java-программ. Кроме того, существует два основных варианта установки Java. OpenJDK – это реализация Java с открытым исходным кодом, которая поставляется вместе с Ubuntu. Oracle JDK – это оригинальная версия Java, полностью поддерживаемая Oracle, разработчиками Java.

Оба этих варианта официально признаны Oracle. Оба также разработаны Oracle, но OpenJDK имеет дополнительные вклады сообщества благодаря своему открытому характеру. Однако начиная с Java 11, эти два варианта теперь функционально идентичны как подробно описано Oracle. Выбор между ними сводится к выбору подходящей лицензии для вашей ситуации. Кроме того, у OpenJDK есть возможность установить JRE отдельно, в то время как OracleJDK поставляется вместе с собственным JRE.

Вариант 1 — Установка JRE/JDK по умолчанию

Один из вариантов установки Java – использовать версию, упакованную в Ubuntu. По умолчанию Ubuntu 22.04 включает OpenJDK 11, который является открытой версией JRE и JDK.

Чтобы установить OpenJDK версию Java, сначала обновите свой индекс пакетов apt:

  1. sudo apt update

Затем проверьте, установлена ли уже Java:

  1. java -version

Если Java в настоящее время не установлена, вы получите следующий вывод:

Output
Command 'java' not found, but can be installed with: sudo apt install default-jre # version 2:1.11-72build1, or sudo apt install openjdk-11-jre-headless # version 11.0.14+9-0ubuntu2 sudo apt install openjdk-17-jre-headless # version 17.0.2+8-1 sudo apt install openjdk-18-jre-headless # version 18~36ea-1 sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1

Выполните следующую команду, чтобы установить JRE из OpenJDK 11:

  1. sudo apt install default-jre

JRE позволит вам запускать практически все программное обеспечение на Java.

Проверьте установку с помощью:

  1. java -version

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

Output
openjdk version "11.0.14" 2022-01-18 OpenJDK Runtime Environment (build 11.0.14+9-Ubuntu-0ubuntu2) OpenJDK 64-Bit Server VM (build 11.0.14+9-Ubuntu-0ubuntu2, mixed mode, sharing)

Возможно, вам понадобится JDK в дополнение к JRE, чтобы компилировать и запускать некоторое специфическое программное обеспечение на Java. Чтобы установить JDK, выполните следующую команду, которая также установит JRE:

  1. sudo apt install default-jdk

Проверьте, установлен ли JDK, проверив версию javac, компилятора Java:

  1. javac -version

Вы увидите следующий вывод:

Output
javac 11.0.14

Далее вы узнаете, как установить официальный JDK и JRE от Oracle.

Вариант 2 — Установка Oracle JDK 11

Лицензионное соглашение Oracle по Java не позволяет автоматическую установку через менеджеры пакетов. Для установки Oracle JDK, официальной версии, распространяемой Oracle, вам необходимо создать учетную запись Oracle и вручную загрузить JDK, чтобы добавить новый репозиторий пакетов для выбранной вами версии. Затем вы можете использовать apt для установки с помощью скрипта установки от стороннего разработчика. Oracle JDK поставляется с включенным JRE, поэтому вам не нужно устанавливать его отдельно.

Версия Oracle JDK, которую вам нужно загрузить, должна соответствовать версии установщика скрипта. Чтобы узнать, какую версию вам нужно, посетите страницу oracle-java11-installer.

Найдите пакет для Jammy, как показано на следующей картине:

На этом изображении версия скрипта – 11.0.13. В этом случае вам потребуется Oracle JDK 11.0.13. Ваш номер версии может отличаться в зависимости от времени установки программного обеспечения.

Вам не нужно ничего загружать с этой страницы; вы загрузите скрипт установки через apt в ближайшее время.

Затем посетите Архив загрузок и найдите версию, которая соответствует вашим требованиям.

Из этого списка выберите сжатый архив Linux x64 .tar.gz:

Вам будет предложено экранное сообщение с просьбой принять лицензионное соглашение Oracle. Выберите флажок для принятия лицензионного соглашения и нажмите кнопку Загрузить. Загрузка начнется. Возможно, вам придется еще раз войти в свою учетную запись Oracle перед началом загрузки.

После завершения загрузки файла вам нужно будет передать его на свой сервер. На вашем локальном компьютере загрузите файл на сервер. На macOS, Linux или Windows, используя Подсистему Windows для Linux, используйте команду scp для передачи файла в домашний каталог вашего пользователя sammy. Следующая команда предполагает, что вы сохранили файл Oracle JDK в папку Downloads вашего локального компьютера:

  1. scp Downloads/jdk-11.0.13_linux-x64_bin.tar.gz sammy@your_server_ip:~

После завершения загрузки файла вернитесь на свой сервер и добавьте сторонний репозиторий, который поможет вам установить Java от Oracle.

Сначала импортируйте ключ подписи, используемый для проверки программного обеспечения, которое вы собираетесь установить:

  1. sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/oracle-jdk11-installer.gpg --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

Вы увидите следующий вывод:

Output
gpg: keybox '/usr/share/keyrings/oracle-jdk11-installer.gpg' created gpg: /tmp/trustdb.gpg: trustdb created gpg: key EA8CACC073C3DB2A: public key "Launchpad PPA for Linux Uprising" imported gpg: Total number processed: 1 gpg: imported: 1

Затем добавьте репозиторий в список источников пакетов:

  1. echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-jdk11-installer.gpg] https://ppa.launchpadcontent.net/linuxuprising/java/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/oracle-jdk11-installer.list > /dev/null

Обновите свой список пакетов, чтобы новое программное обеспечение стало доступным для установки:

  1. sudo apt update

Установщик будет искать Oracle JDK, который вы скачали, в каталоге /var/cache/oracle-jdk11-installer-local. Создайте этот каталог и переместите туда архив Oracle JDK:

  1. sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
  2. sudo cp jdk-11.0.13_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

Наконец, выполните установку пакета:

  1. sudo apt install oracle-java11-installer-local

Установщик сначала попросит вас принять лицензионное соглашение Oracle. Примите соглашение, после чего установщик извлечет пакет Java и установит его.

Теперь вы узнаете, как выбрать версию Java, которую вы хотите использовать.

Шаг 2 — Управление Java

Вы можете установить несколько версий Java на один сервер. Вы можете настроить версию по умолчанию для использования в командной строке с помощью команды update-alternatives.

  1. sudo update-alternatives --config java

Вот как будет выглядеть вывод, если вы установили обе версии Java в этом руководстве:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

Выберите номер, связанный с версией Java, чтобы использовать ее по умолчанию, или нажмите ENTER, чтобы оставить текущие настройки.

Вы можете сделать то же самое для других команд Java, таких как компилятор (javac):

  1. sudo update-alternatives --config javac

Другие команды, для которых можно выполнить эту команду, включают, но не ограничиваются: keytool, javadoc и jarsigner.

Шаг 3 — Настройка переменной среды JAVA_HOME

Многие программы, написанные на Java, используют переменную среды JAVA_HOME, чтобы определить местоположение установки Java.

Чтобы установить эту переменную среды, сначала определите, где установлена Java. Используйте команду update-alternatives:

  1. sudo update-alternatives --config java

Эта команда показывает каждую установку Java вместе с ее путем установки:

Output
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode * 2 /usr/lib/jvm/java-11-oracle/bin/java 1091 manual mode Press <enter> to keep the current choice[*], or type selection number:

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

  1. OpenJDK 11 находится по адресу /usr/lib/jvm/java-11-openjdk-amd64/bin/java.
  2. Oracle Java находится по адресу /usr/lib/jvm/java-11-oracle/jre/bin/java.

Скопируйте путь из вашей предпочтительной установки. Затем откройте файл /etc/environment с помощью nano или вашего любимого текстового редактора:

  1. sudo nano /etc/environment

В конце этого файла добавьте следующую строку, убедившись, что заменяете выделенный путь своим собственным скопированным путем и не включаете часть пути bin/:

/etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

Изменение этого файла установит путь JAVA_HOME для всех пользователей на вашей системе.

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

Теперь перезагрузите этот файл, чтобы применить изменения к текущей сессии:

  1. source /etc/environment

Проверьте, установлена ли переменная среды:

  1. echo $JAVA_HOME

Вы увидите путь, который только что установили:

Output
/usr/lib/jvm/java-11-openjdk-amd64

Другие пользователи должны выполнить команду source /etc/environment или выйти из системы и заново войти, чтобы применить этот параметр.

Заключение

В этом руководстве вы установили несколько версий Java и узнали, как их управлять. Теперь вы можете устанавливать программное обеспечение, которое работает на Java, такое как Tomcat, Jetty, Glassfish, Cassandra или Jenkins.

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-22-04