Установка Oracle JDK и JRE на Debian/Ubuntu

Всем доброго времени суток!

Цель данной статьи поделиться опытом установки Oracle JDK и JRE на Ubuntu или Debian, так как разницы в результате нет и работает Java и там и там одинаково хорошо (не без лагов конечно, но это уже проблема софта написанного на Java, а не Linux).

Кстати, вкратце я уже рассказывал об этом пару лет назад в статье "Установка Java8 и SQL Developer на Debian Wheezy", но это было давно и неправда.

Скажу сразу, я терпеть не могу постоянно скачивать программы вручную и каждый раз вручную их обновлять (не на винде же сижу), поэтому первое что приходит в голову, когда смотришь на страницу скачивания Java - добавить репозитоий с пакетами, в которых Java собсно и сидит. Как оказалось Oracle не имеет официальных репозиторие для Debian (и Ubuntu в том числе), поэтому пришлось искать данный репозиторий на стороне, а именно на Launchpad'е. Однако, долго искать не пришлось, есть замечательный коллектив под названием webupd8team, который написал несколько скриптов, для автоматизации процесса загрузки Oracle Java для самой популярной операционной системы (на базе ядра Linux) в мире, это я про Ubuntu конечно.

Добавим репозиторий: Debian-way

Выполнять команды написанные ниже лучше имея права администратора, для этого авторизуемся с правами root (не сиди из под рута!):

sudo su

Теперь создадим файл webupd8team-java.list в директории /etc/apt/sources.list.d

echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu artful main" | tee /etc/apt/sources.list.d/webupd8team-java.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu artful main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list

Вместо artful можно указать любую другую версию дистрибутива операционной системы (полный список тут). Добавим ключик репозитория, это нужно сделать чтобы apt-get update не ругался:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C2518248EEA14886

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

apt-get update

Если произошла ошибка на этапе apt-get update

Хочу обратить Ваше внимание людей из будущего, в вашем случае скорее всего ID ключа будет отличаться, поэтому если apt-get update выдаст ошибку вида:

W: Ошибка GPG: http://ppa.launchpad.net/webupd8team/java/ubuntu artful InRelease: Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY C2518248EEA14886
W: Репозиторий «http://ppa.launchpad.net/webupd8team/java/ubuntu artful InRelease» не подписан.
N: Данные из этого репозитория нельзя аутентифицировать, и поэтому потенциально из небезопасно использовать.
N: Смотрите справочную страницу apt-secure(8) о создании репозитория и настройке пользователя.

Нужно повторить выполнение команды apt-key, но вместо C2518248EEA14886 указать тот ключ, который не смог найти apt-get.

Добавим репозиторий: Ubuntu-way

Тут всё просто:

add-apt-repository ppa:webupd8team/java

На этом всё, утилита add-apt-repository сама выполнит всё необходимое, для того чтобы пакеты из данного репозитория стали доступны для apt-get.

Установка

Пожалуй самая простая часть:

apt-get install oracle-java8-installer oracle-java8-set-default

Чуть подробнее про назначение пакетов:

  • oracle-java8-installer - Коллекция скриптов, способная в автоматическом режиме скачать всё необходимое с сайта Oracle
  • oracle-java8-set-default -  Данный пакет прописывает в переменные окружения пути к ресурсам из пакета Java

Послесловие

А на этом всё, надеюсь данная статья поможет Вам в этом непростом мире Linux. Кстати, в Discord есть сообщество программистов, в котором я принимаю активное участие, поэтому если у Вас возникнут вопросы, обращайтесь, не стесняйтесь, ну или если Вы консерватор, то через Twitter пишите @EvilFreelancer.

Благодарю за внимание!