Как установить Java с Apt на Debian 10

Вступление

Java и JVM (виртуальная машина Java) требуются для многих видов программного обеспечения, включая Tomcat, Jetty, https: //javaee.github.io/glassfish/[Glassfish], Cassandra и Jenkins.

В этом руководстве вы установите различные версии Java Runtime Environment (JRE) и Java Developer Kit (JDK), используя систему управления пакетами Debian + apt +.

Вы установите OpenJDK 11, а также официальное программное обеспечение Java 11 от Oracle. Затем вы выберете версию, которую хотите использовать для своих проектов. Когда вы закончите, вы сможете использовать JDK для разработки программного обеспечения или использовать Java Runtime для запуска программного обеспечения.

Предпосылки

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

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

Самый простой вариант установки Java - использовать версию, поставляемую с Debian. По умолчанию Debian 10 включает в себя версию 11 OpenJDK, которая является вариантом JRE и JDK с открытым исходным кодом и совместима с Java 11.

Java 11 - это текущая версия Java с долгосрочной поддержкой.

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

sudo apt update

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

java -version

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

Output-bash: java: command not found

Затем используйте команду + apt install + для установки OpenJDK:

sudo apt install default-jre

Это установит Java Runtime Environment (JRE), что позволит вам запускать практически все программное обеспечение Java.

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

java -version

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

Outputopenjdk version "11.0.4" 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Debian-1deb10u1, mixed mode, sharing)

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

sudo apt install default-jdk

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

javac -version

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

Outputjavac 11.0.4

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

Установка Oracle JDK

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

Во-первых, давайте загрузим Java с веб-сайта Oracle.

Загрузка программного обеспечения Oracle SE для Oracle

Из-за недавних изменений в том, как Oracle обрабатывает лицензирование Java, вам необходимо создать учетную запись Oracle и загрузить программное обеспечение непосредственно с их веб-сайта, прежде чем продолжить установку.

Если у вас еще нет учетной записи Oracle, создайте ее на странице создания учетной записи Oracle.

После этого перейдите на Oracle страницу загрузки SE SE:

изображение: https: //assets.digitalocean.com/articles/apt-install-java/downloads-page.png [веб-страница загрузок Oracle Java]

Нам нужно убедиться, что мы загружаем правильную версию Java, потому что она должна соответствовать ожидаемой программе установки. Мы можем проверить, какая версия нужна установщику, посетив package list хранилища программного обеспечения установщика.

Мы загрузим установку из этого репозитория на следующем шаге, но пока ищем файлы + oracle-java11-installer-local …​ +:

изображение: https: //assets.digitalocean.com/articles/apt-install-java/package-list.png [снимок экрана со списком пакетов для установки linuxuprising java]

В этом случае мы видим, что установщик ожидает версию 11.0.4. Не обращайте внимания на любое число, которое следует после дефиса + - + в номере версии пакета (+ 1 + на приведенном выше снимке экрана).

Теперь, когда мы знаем правильный номер версии, прокрутите страницу загрузки Java, пока не найдете правильную версию:

изображение: https: //assets.digitalocean.com/articles/apt-install-java/download-link.png [снимок экрана, показывающий расположение кнопки загрузки Oracle JDK]

Нажмите кнопку загрузки, и вы попадете на один последний экран:

изображение: https: //assets.digitalocean.com/articles/apt-install-java/download-selection.png [снимок экрана параметров загрузки Java]

Выберите переключатель * Accept License Agreement *, затем щелкните пакет + .tar.gz + для Linux, и загрузка начнется. Возможно, вам придется войти в свою учетную запись Oracle еще раз, прежде чем начнется загрузка.

После окончания загрузки нам нужно загрузить загруженный файл на наш сервер. Для этого мы будем использовать команду + scp +, но вы можете использовать любое удобное для вас программное обеспечение для передачи файлов.

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

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

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

Добавление хранилища Apt установщика

Сначала установите пакет + software-properties-common, который добавляет команду` + add-apt-repository` в вашу систему:

sudo apt install software-properties-common

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

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

Затем мы используем команду + add-apt-repository, чтобы добавить репо в наш список источников пакетов:

sudo add-apt-repository ppa:linuxuprising/java

Вы увидите это сообщение:

Output Oracle Java 11 (LTS) and 12 installer for Ubuntu, Linux Mint and Debian.

Java binaries are not hosted in this PPA due to licensing. The packages in this PPA download and install Oracle Java 11, so a working Internet connection is required.

The packages in this PPA are based on the WebUpd8 Oracle Java PPA packages: https://launchpad.net/~webupd8team/+archive/ubuntu/java

Created for users of https://www.linuxuprising.com/

Installation instructions (with some tips), feedback, suggestions, bug reports etc.:

. . .

Press [ENTER] to continue or ctrl-c to cancel adding it

Нажмите + ENTER, чтобы продолжить установку. Вы можете увидеть сообщение «+ не найдены действительные данные OpenPGP». Это можно игнорировать.

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

sudo apt update

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

Установка загруженного программного обеспечения Java

Сначала нам нужно создать специальный каталог, который установщик использует для поиска программного пакета Java, а затем скопировать файл + .tar.gz + в:

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

После завершения копирования файла установите Oracle 11 Java с помощью пакета + oracle-java11-installer-local +:

sudo apt install oracle-java11-installer-local

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

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

Управление Java

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

sudo update-alternatives --config java

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

OutputThere 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

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

Давайте установим переменную окружения + JAVA_HOME + далее.

Установка переменной окружения + JAVA_HOME +

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

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

sudo update-alternatives --config java

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

Output  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

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

  • Oracle Java 11 находится по адресу + / usr / lib / jvm / java-11-oracle / bin / java.

  • OpenJDK 11 находится по адресу + / usr / lib / jvm / java-11-openjdk-amd64 / bin / java +.

Эти пути показывают путь к исполняемому файлу + java +.

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

sudo nano /etc/environment

Этот файл может быть пустым изначально. В конце файла добавьте следующую строку, заменив выделенный путь собственным скопированным путем:

/ И т.д. / окружающая среда

JAVA_HOME=""

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

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

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

source /etc/environment

Убедитесь, что установлена ​​переменная среды:

echo $JAVA_HOME

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

Output

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

Заключение

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