Linux java настройка безопасности

Обновлено: 07.07.2024

Java — это язык программирования и вычислительная платформа, впервые выпущенная компанией Sun Microsystems в 1995 году. Это базовая технология, на которой основываются многие современные программы (в том числе утилиты, игры и бизнес-приложения). Java работает на более чем 850 млн персональных компьютерах и в миллиардах устройств (в том числе в мобильных телефонах и в телевизорах) по всему миру.

Зачем нужен Java?

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

Версии Java

На данный момент существует множество реализаций Java платформы, из которых популярны две – открытая версия OpenJDK и Oracle Java. Основные отличия между этими версиями заключается в том, что в Oracle Java содержатся некоторые закрытые компоненты, а так же компоненты, защищенные патентами. OpenJDK является реализацией спецификаций Java с полностью открытым исходным кодом. Начиная с 7 версии OpenJDK является эталонной реализацией Java SE. Для большинства пользователей нет особой разницы какой именно версией Java пользоваться, но в некоторых случаях закрытая реализация от Oracle проявляет себя с лучшей стороны.

Установка Java

OpenJDK

Установить последнюю версии JRE можно перейдя по ссылке слева или введя в терминале следующую команду:

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

Установить последнюю версии пакета документации можно перейдя по ссылке слева или введя в терминале следующую команду:

Чтобы добавить данный репозиторий и использовать последнюю версию Java с сайта Oracle, выполните в терминале следующие действия:

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

Проверьте установленную версию:

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

Переключение между версиями Java. Вы можете установить Java 7 или другую версию командой:

После этого можно переключаться между версиями Java с помощью команд. Переключение на версию Java 7:

Переключение на версию Java 8:

Для автоматической установки переменных среды вы можете выполнить команду:

Установка переменных среды может вызвать ошибки, если указать пути к разным версиям одной библиотеки (то есть будут совпадать имена классов) или путь к установленной в системе Java будет отличаться от указанного в переменных среды.

Поэтому, как вариант, если у вас нет программ использующих их, то не устанавливайте их.

Если вы используете эту команду и захотите переустановить jdk, то после переустановки необходимо выполнить её еще раз, чтобы обновить переменные (переустановить данный пакет).

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

Либо командой (добавленное командой export действует только до перезагрузки)

Переменная PATH должна зависить от JAVA_HOME и JRE_HOME, как показано в команде ниже. Команды с export должны быть набраны в консоли и тогда они будут действовать до перезагрузки системы. Или добавлены в конец файла /etc/profile и тогда они будут действовать после перезагрузки системы.

Тогда для быстрого переключения на другие пепременные среды при смене версий Java нужно менять только эти переменные среды:

Скорее всего данный скрипт именно так устанавливает переменную PATH так что вам не нужно будет её менять и нужно выполнить только последние три комманды.

Установка различных версий Java через графическое меню может быть сделана сторонним скриптом от Bruce Ingalls.

Java - популярный язык программирования, разработанный в компании Sun Microsystems, ныне принадлежащей корпорации Oracle. Java занимает лидирующие позиции в мире языков программирования. Многие программы, разработанные для Linux намного лучше выполняются с использованием проприетарной версии Java.

В данной статье будет рассмотрена установка JRE (Java Runtime Environment) и JDK (Java Development Kit) 8 версии on Oracle на дистрибутивы Ubuntu 20.04, CentOS 8 и Arch Linux. Также будет рассмотрен выбор необходимой среды по умолчанию.

Чем отличается JDK от JRE

  • JRE - Java Runtime Environment - это среда выполнения Java. Предназначена для обычного использования. Позволяет запускать приложения, написанные на языке Java.
  • JDK- Java Development Kit - стандартная версия платформы Java, предназначенная для разработки. Это специальный пакет разработчика, в который входят документация, различные утилиты, компилятор, библиотеки классов, а также сама JRE.

Установка Java в Ubuntu

Для начала необходимо скачать архив с официального сайта Oracle выбрав пакет с именем Linux x64 если используется 64 битная система или выбрать пакет с именем Linux если используется 32 битная система:

TJLJfuz9wzEAAAAASUVORK5CYII=

Далее скачанный архив необходимо переместить в любую директорию и распаковать. В качестве примера будет выбрана директория /usr/java/ Предварительно данную директорию необходимо создать при помощи команды:

sudo mkdir /usr/java/

Awf5x9h1Cge7AAAAAElFTkSuQmCC

Для перемещения архива необходимо выполнить следующую команду:

(тильда) означает домашнюю директорию пользователя. Далее перейдите в директорию /usr/java и распакуйте архив при помощи команды:

sudo tar -xzvf jre-8u311-linux-x64.tar.gz

9QaKxvEOkKaSS1b8j0Tvp08v+IQ4MvfmSH2Qqe3o8f8HXC8y7UlKfEYAAAAASUVORK5CYII=

Далее системе необходимо указать, где находятся установочные файлы Java. Для этого необходимо создать символическую ссылку в каталоге /usr/bin/ которая будет ссылаться на установочную директорию /usr/java/jre1.8.0_311 Для этого необходимо выполнить команду:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jre1.8.0_311/bin/java" 1

O0NJDAcmttmhKcZqLneq2gS45i58z5EjnbzyNQsTqQwN570QUdN8VTOfFRdgx7b8fwE9JnEhhFHl4wAAAABJRU5ErkJggg==

После этого можно проверить версию Java выполнив команду:

uAJAAAAAElFTkSuQmCC

Загрузите архив со средствами разработки с официального сайта компании Oracle. Необходимо выбрать раздел Linux и найти пакет с именем jdk-8u311-linux-aarch64.tar.gz:

D7GgZhvZ1heuAAAAAElFTkSuQmCC

Далее необходимо поставить галочку напротив пункта I reviewed and accept the Oracle Technology Network License Agreement for Oracle Java SE тем самым подтверждая принятия условия лицензионного соглашения.

Fese28Keg6QAAAAASUVORK5CYII=

Для скачивания файла необходимо войти в свою учетную запись Oracle или создать новую, только после этого начнется загрузка архива.

В качестве примера также будет выбрана директория /usr/java. Предварительно данная директория должна быть создана. Перенесите архив в директорию /usr/java:

wJKHqzr2cjQAAAABJRU5ErkJggg==

Далее перейдите в директорию /usr/java и распакуйте архив:

sudo tar -xzvf jdk-8u311-linux-x64.tar.gz

9wbymZsLeWgAAAABJRU5ErkJggg==

Так же, как и при настройке JRE необходимо указать, где находятся установочные файлы Java. Для этого необходимо создать символическую ссылку в каталоге /usr/bin/ которая будет ссылаться на установочную директорию /usr/java/jdk1.8.0_311. Для этого необходимо выполнить команду:

sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_311/bin/java 1

5jDAyOEAAAAASUVORK5CYII=

Переменные окружения

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

sudo update-alternatives --config java

8H8IVE+xECxXAAAAAASUVORK5CYII=

В данном случае в системе установлены JRE и JDK одновременно. Поэтому присутствует 2 пути:

  • /usr/java/jdk1.8.0_311/bin/java
  • /usr/java/jre1.8.0_311/bin/java

Выберите нужный тип Java и скопируйте путь необходимой версии и откройте файл /etc/environment в любом текстовом редакторе (например nano):

sudo nano /etc/environment

8fEmBMz97bRJ4AAAAASUVORK5CYII=

Необходимо добавьте строку с путём установки JRE или JDK в конец этого файла:

tncR3QyKUguHjDl3x6QyHOwug1d1y9PWnDqM3f8HPohND64QrPAAAAAASUVORK5CYII=

Сохраните и закройте файл. Чтобы применить настройки, необходимо перейти в учётную запись root далее перечитать файл выполнив в терминале команду:

Установка Java в Arch Linux

В официальных репозиториях Arch Linux присутствует только OpenJDK, в то время как проприетарная JRE присутствует только в пользовательских репозиториях aur. Для установки JRE необходимо перейти по ссылке официальной страницы JRE в репозитории aur и найти ссылку на GIT репозиторий программы в поле Git Clone URL:

wFJfNkAb+2MPAAAAABJRU5ErkJggg==

Далее необходимо склонировать данный репозиторий при помощи команды:

8LFy8UuipbQI8AAAAASUVORK5CYII=

Перейдите в скачанный репозиторий:

Для установки JRE необходимо выполнить команду:

xIu97DQV6wIrZMrmU7d56hh09asrkWpC2oL+fwBz9HzHPEFHUwAAAABJRU5ErkJggg==

При появлении фразы Proceed with installation? [Y/n] введите y и нажмите на клавишу Enter:

BafxjWnn8Uf+AAAAAElFTkSuQmCC

Установка JRE завершена.

Как и JRE JDK так же присутствует только в пользовательском репозитории aur. Несмотря на то, что установочный процесс совпадает с установкой JRE, у установки JDK есть одна особенность - с тех пор как пакеты JDK расположенные на сайте Oracle требует авторизации на сайте необходимо заранее скачать пакет JDK иначе установщик выдаст ошибку.

Перейдите на официальный сайт Oracle найдите и скачайте архив с именем jdk-8u301-linux-x64.tar.gz:

AVgXc9sCLpQnAAAAAElFTkSuQmCC

Далее склонируйте репозиторий с JDK выполнив команду:

MTmUtSCv1rHCsRSubkkQQUQL7B3Igmi107P8CD57nqEX0RocAAAAASUVORK5CYII=

Переместите ранее скачанный архив в только что склонированный репозиторий при помощи команды:

mv Downloads/jdk-8u301-linux-x64.tar.gz jdk8/

Где Downloads - директория куда был скачен архив, а jdk8/- директория с самим JDK. Перейдите в директорию с JDK и запустите команду для установки:

JgDZUkKIykfwpmoisG+XQhL5QaUIfycN6fvnvpkwHmJse2QYAAAAASUVORK5CYII=

При появлении фразы Proceed with installation? [Y/n] введите y и нажмите на клавишу Enter:

Je8cAAAAASUVORK5CYII=

После этого установка JDK будет завершена.

Установка Java в CentOS 8

Для RHEL дистрибутивов, таких как, CentOS, Fedora, RedHat и OpenSUSE есть официальный RPM-пакет. Для начала необходимо скачать пакет с официального сайта Oracle выбрав пакет с именем Linux RPM если используется 64 битная система или выбрать пакет с именем Linux x64 RPM если используется 32 битная система:

Чтобы установить пакет необходимо выполнить команду в терминале:

sudo rpm -i jre-8u311-linux-x64.rpm

H+e6jWWzjgjhW9CU5Noa6zBfkfRAcluHMeCd68WTb44GVEbKWIA6rBntL8iQpbmYScmZDbVnSOVoZen8ASURNvrAw+nQxpS+25IMY9r7bBqmGwIPk8sFFwYnWqMBnsuMWp9P8PnZk0VMIhYZ0AAAAASUVORK5CYII=

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

B8sb3pmw0Z8ZAAAAAElFTkSuQmCC

Средства для разработчиков также можно скачать с официального сайта Oracle выбрав пакет с именем jdk-8u311-linux-x64.rpm для 64 битной системы и выбрав пакет с именем jdk-8u311-linux-i586.rpm для 32 битной системы:

38PGAnobR9D9gAAAABJRU5ErkJggg==

Для установки из терминала, необходимо выполнить команду:

sudo rpm -i jdk-8u311-linux-x64.rpm

iT0cBhpPLkAAAAAASUVORK5CYII=

Для просмотра версии JDKнеобходимо выполнить команду:

5O1QVyR45yMAAAAAElFTkSuQmCC

Выбор версии Java по умолчанию

Ubuntu 20.04

Для начала необходимо вывести список всех установленных версий Java в системе. Для этого необходимо выполнить команду:

sudo update-alternatives --config java

8H8IVE+xECxXAAAAAASUVORK5CYII=

Если у в вас системе установлено несколько версий Java можно выбрать ту, которая будет использоваться по умолчанию. Так как на данный момент в системе присутствует только 8 версия Java то выбирать версию нет необходимости. Если в системе одновременно присутствуют 2 и более версии, то для выбора версии по умолчанию необходимо ввести цифру, которая будет располагаться напротив нужной версии.

ArchLinux

Для начала просмотрите список установленных сред при помощи команды:

archlinux -java status

Далее установите необходимую версию:

sudo archlinux -java set имя_среды

C6N0VessAcfuAAAAAElFTkSuQmCC

Для проверки версии JDK необходимо выполнить команду:

Mp6cb2kd+iLZdR57qb1k04q8eINBi+pgj0z40V9iVf9pniT8lUIMCm0DUuNE+KUro2JRrM6VGvHmkJU5mIYoDGLXCbjyJ5X4yN+X4vCng4lzn2HJMUsnesxtM0sEJWw0EWBeNcl2U1pFCw9yCVv8LO2o3urIvSXcAAAAASUVORK5CYII=

Для проверки версии JRE необходимо выполнить команду:

ALZLJr9WQoB6AAAAAElFTkSuQmCC

CentOS 8.2

Выбрать необходимую версию Java можно с помощью команды ниже (так же, как и в Ubuntu). Необходимо выбрать цифру, соответствующую номеру версии:

sudo update-alternatives --config java

wKc8JSLwIIgyQAAAABJRU5ErkJggg==

Выводы

В данной статье показан процесс установки и настройки Java в различных дистрибутивах Linux. Если остались вопросы, спрашивайте в комментариях!

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

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

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

Для данного обучающего руководства вам потребуется следующее:

  • Сервер Ubuntu 20.04, настроенный в соответствии с указаниями обучающего руководства Начальная настройка сервера Ubuntu 20.04, а также пользователь без прав root с привилегиями sudo и брандмауэр.

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

Самый простой вариант установки Java — использовать версию, входящую в пакет Ubuntu. По умолчанию в пакет Ubuntu 20.04 входит Open JDK 11 (версия JRE и JDK с открытым исходным кодом).

Для установки этой версии нужно вначале обновить указатель пакетов:

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

Если установка Java не выполнялась, вы увидите следующие результаты:

Выполните следующую команду, чтобы установить по умолчанию среду Java Runtime Environment (JRE), которая установит JRE из OpenJDK 11:

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

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

Вывод должен выглядеть следующим образом:

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

Вывод должен выглядеть так:

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

Установка Oracle JDK 11

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

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

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

Установочный пакет для Ubuntu 2.04

На этом изображении версия скрипта 11.0.7 . В данном случае вам понадобится Oracle JDK 11.0.7. Вам не нужно ничего загружать с этой страницы, вы загрузите скрипт установки через apt .

Затем перейдите на страницу загрузок и найдите версию, которая вам нужна.

Oracle Java 11

Загрузка Linux

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

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

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

Установите пакет software-properties-common , который добавит команду add-apt-repository в вашу систему:

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

Вы увидите следующий результат:

После этого используйте команду add-apt-repository , чтобы добавить репозиторий в список источников пакетов:

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

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

После этого выполните установку пакета:

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

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

Управление Java

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

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

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

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

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

Настройка переменной среды JAVA_HOME

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

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

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

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

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

Скопируйте путь каталога установки предпочитаемой версии. Откройте каталог /etc/environment в nano или другом текстовом редакторе:

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

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

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

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

Убедитесь, что переменная среды задана:

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

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

Заключение

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

Узнайте, как установить OpenJDK и Oracle JDK версий с 8 по 11 в системах Ubuntu.

1. Обзор

В этом уроке мы представим различные методы установки JDK на Ubuntu . Затем мы кратко сравним методы. Наконец, мы покажем, как управлять несколькими установками Java в системе Ubuntu.

В качестве предварительного условия для каждого метода нам необходимо

  • система Ubuntu
  • войти в систему как пользователь, не являющийся root, с правами sudo

Инструкции, описанные ниже, были протестированы на Ubuntu 18.10, 18.04 LTS, 16.04 LTS и 14.04 LTS. Для Ubuntu 14.04 LTS есть некоторые различия, которые упоминаются в тексте.

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

2. Установка JDK 11

Если мы хотим использовать последнюю и самую лучшую версию JDK, часто ручная установка-это путь. Это означает загрузку пакета с сайта OpenJDK или Oracle и настройку его таким образом, чтобы он соответствовал соглашениям о том, как apt настраивает пакеты JDK.

2.1. Установка OpenJDK 11 Вручную

Прежде всего, давайте загрузим tar архив недавно выпущенного OpenJDK 11:

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

Давайте распакуем архив tar :

Далее, давайте переместим каталог jdk11 , который мы только что извлекли, в подкаталог /usr/lib/jvm . Пакеты apt , описанные в следующем разделе, также помещают свои JDK в этот каталог:

Теперь мы хотим сделать команды java и javac доступными . Одной из возможностей было бы создать для них символические ссылки, например, в каталоге /usr/bin . Но вместо этого мы установим альтернативу для них обоих. Таким образом, если мы когда-нибудь захотим установить дополнительные версии JDK, они будут хорошо работать вместе:

Давайте проверим установку:

Как мы видим из выходных данных, мы действительно установили последнюю версию OpenJDK JRE и JVM:

Давайте также взглянем на версию компилятора:

2.2. Установка Oracle JDK 11 Вручную

Если мы хотим убедиться, что используем новейшую версию Oracle JDK, мы можем следовать аналогичному ручному процессу установки, как и для OpenJDK. Чтобы загрузить архив tar для JDK 11 с веб-сайта Oracle , мы должны сначала принять лицензионное соглашение . По этой причине загрузка через wget немного сложнее, чем для OpenJDK:

В приведенном выше примере загружается пакет для 11.0.1. Точная ссылка для загрузки изменяется для каждой второстепенной версии.

Следующие шаги такие же, как и для OpenJDK:

Проверка тоже такая же. Но вывод показывает, что на этот раз мы установили не OpenJDK, а Java(TM):

И для компилятора:

2.3. Установка Oracle JDK 11 из PPA

В настоящее время Oracle JDK 11 также доступен в PPA (личном архиве пакетов). Эта установка включает в себя 2 шага: добавление репозитория в нашу систему и установку пакета из репозитория через apt:

Шаги проверки должны показать тот же результат, что и после ручной установки в разделе 2.2.1.:

И для компилятора:

В Ubuntu 14.04 LTS команда add-apt-repository по умолчанию недоступна. Чтобы добавить репозиторий, сначала нам нужно установить пакет software-properties-common .

После этого мы можем продолжить работу с add-apt-repository, apt update и apt install , как показано выше.

3. Установка JDK 8

3.1. Установка OpenJDK 8 на Ubuntu 16.04 LTS и новее

Теперь давайте проверим установку:

В результате должна быть указана среда выполнения и JVM:

Давайте проверим, что исполняемый файл javac также доступен:

Теперь мы должны увидеть тот же номер версии, что и показано выше:

3.2. Установка OpenJDK 8 на Ubuntu 14.04 LTS

3.3. Установка Oracle JDK 8 из PPA

Во-первых, нам нужно добавить репозиторий PPA apt в нашу систему:

Затем мы можем установить пакет обычным способом:

Во время установки мы должны принять лицензионное соглашение Oracle. Давайте проверим установку:

Вывод показывает Java(TM) JRE и JVM:

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

4. Установка JDK 10

Версии Java 10 и Java 9 больше не поддерживаются. Вы можете установить их вручную, выполнив те же действия, что и в разделе 2. Вы можете забрать пакеты из:

Оба сайта содержат одно и то же предупреждение:

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

4.1. Установка OpenJDK 10 Вручную

Давайте посмотрим, как установить OpenJDK 10.0.1:

4.2. Установка Oracle JDK 10 Вручную

5. Установка JDK 9

5.1. Установка OpenJDK 9 Вручную

Точно так же, как мы видели выше с OpenJDK 10.0.1, мы загружаем пакет OpenJDK 9 через wget и настраиваем его в соответствии с соглашениями:

5.2. Установка Oracle JDK 9 Вручную

6. Сравнение

Мы видели три разных способа установки JDK в Ubuntu. Давайте кратко рассмотрим каждый из них, указав на преимущества и недостатки.

6.2. PPA

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

6.3. Ручная Установка

Мы загружаем пакет непосредственно с сайта OpenJDK или Oracle. Хотя этот метод обеспечивает большую гибкость, мы несем ответственность за обновления. Если мы хотим иметь новейший и самый большой JDK, это правильный путь.

7. Изучение других версий JDKs

Примеры в разделах 2 и 3 отражают текущее состояние Ubuntu 18.04 LTS. Имейте в виду, что JDKS и соответствующие пакеты регулярно обновляются. Таким образом, полезно знать, как исследовать наши текущие возможности .

Если мы хотим использовать неподдерживаемую версию, даже это может быть сложно. На момент написания этой статьи мы не нашли никаких пакетов для Java 9 или Java 10 на веб-сайтах OpenJDK и Oracle.

В Ubuntu 18.04 LTS мы можем выбирать между двумя текущими версиями LTS Java:

Также стоит отметить , что, хотя пакет называется openjdk-11-jdk , на момент написания этой статьи он фактически устанавливает версию 10.0.2. Это, вероятно, скоро изменится. Мы можем это увидеть, если осмотрим упаковку:

Давайте рассмотрим, какие другие пакеты у нас есть в вашем распоряжении, кроме пакета jdk по умолчанию:

Мы можем найти некоторые из этих пакетов полезными. Например, openjdk-11-source содержит исходные файлы для классов API Java core, в то время как openjdk-11-dbg содержит символы отладки.

Помимо семейства openjdk -* , есть пакет default-jdk , который стоит изучить:

В конце вывода в описании говорится::

В случае Ubuntu 18.04 LTS это пакет openjdk-11-jdk на данный момент.

8. Обзор: Версии и пакеты Java

Теперь давайте посмотрим, как различные версии Java могут быть установлены на Ubuntu 18.04 LTS на момент написания этой статьи:

9. Несколько версий Java в системе Ubuntu

Стандартный способ управления несколькими версиями одного и того же программного обеспечения в Ubuntu-через систему альтернатив Debian. Большую часть времени мы создаем, поддерживаем и отображаем альтернативы с помощью программы update-alternatives .

Когда apt устанавливает пакет JDK, он автоматически добавляет записи для альтернатив. В случае ручной установки мы видели, как добавить альтернативы для java и javac соответственно.

Давайте посмотрим на наши альтернативы:

В нашей тестовой системе, где мы установили две разные версии OpenJDK, в выходных данных перечислены обе альтернативы с соответствующими приоритетами:

Теперь, когда мы увидели наши альтернативы, мы также можем переключаться между ними:

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

Если мы работаем над несколькими приложениями, написанными на разных версиях Java, скорее всего, нам также понадобятся разные версии другого программного обеспечения (например, Maven, какой-то сервер приложений). В этом случае мы можем рассмотреть возможность использования больших абстракций, таких как контейнеры Docker.

10. Заключение

И, наконец, мы видели, как управлять несколькими установками Java в системе Ubuntu с помощью update-alternatives .

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

Читайте также: