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

0 Акции
0
0
0
0

Введение

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

Предпосылки
  • Сервер 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 включает Open JDK 11 — версию JRE и JDK с открытым исходным кодом.

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

sudo apt update

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

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:

sudo apt install default-jre

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

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

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)

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

sudo apt install default-jdk

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

javac -version

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

Output
javac 11.0.14

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

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

Лицензионное соглашение Oracle для Java не допускает автоматическую установку через менеджеры пакетов. Чтобы установить Oracle JDK, официальную версию, распространяемую Oracle, необходимо создать учётную запись Oracle и вручную загрузить JDK, чтобы добавить новый репозиторий пакетов для нужной версии. Затем вы можете установить 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 в папке «Загрузки» на локальном компьютере:

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

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

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

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

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

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

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

sudo apt update

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

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

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

sudo apt install oracle-java11-installer-local

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

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

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

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

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):

sudo update-alternatives --config javac

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

Шаг 3 — Установите переменную среды JAVA_HOME

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

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

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 или вашего любимого текстового редактора:

sudo nano /etc/environment

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

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

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

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

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

source /etc/environment

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

echo $JAVA_HOME

Вы увидите только что заданный вами путь:

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

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

Результат

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может понравиться