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
- Установка Java в Ubuntu
- Установка Java в Arch Linux
- Установка Java в CentOS 8
- Выбор версии Java по умолчанию
- Выводы
Чем отличается JDK от JRE
- JRE - Java Runtime Environment - это среда выполнения Java. Предназначена для обычного использования. Позволяет запускать приложения, написанные на языке Java.
- JDK- Java Development Kit - стандартная версия платформы Java, предназначенная для разработки. Это специальный пакет разработчика, в который входят документация, различные утилиты, компилятор, библиотеки классов, а также сама JRE.
Установка Java в Ubuntu
JRE
Для начала необходимо скачать архив с официального сайта Oracle выбрав пакет с именем Linux x64 если используется 64 битная система или выбрать пакет с именем Linux если используется 32 битная система:
Далее скачанный архив необходимо переместить в любую директорию и распаковать. В качестве примера будет выбрана директория /usr/java/ Предварительно данную директорию необходимо создать при помощи команды:
sudo mkdir /usr/java/
Для перемещения архива необходимо выполнить следующую команду:
sudo mv ~/Downloads/jre-8u311-linux-x64.tar.gz /usr/java/
Где символ ~ (тильда) означает домашнюю директорию пользователя. Далее перейдите в директорию /usr/java и распакуйте архив при помощи команды:
sudo tar -xzvf jre-8u311-linux-x64.tar.gz
Далее системе необходимо указать, где находятся установочные файлы 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
После этого можно проверить версию Java выполнив команду:
java -version
JDK
Загрузите архив со средствами разработки с официального сайта компании Oracle. Необходимо выбрать раздел Linux и найти пакет с именем jdk-8u311-linux-aarch64.tar.gz:
Далее необходимо поставить галочку напротив пункта I reviewed and accept the Oracle Technology Network License Agreement for Oracle Java SE тем самым подтверждая принятия условия лицензионного соглашения.
Для скачивания файла необходимо войти в свою учетную запись Oracle или создать новую, только после этого начнется загрузка архива.
В качестве примера также будет выбрана директория /usr/java. Предварительно данная директория должна быть создана. Перенесите архив в директорию /usr/java:
sudo mv ~/Downloads/jdk-8u311-linux-x64.tar.gz /usr/java
Далее перейдите в директорию /usr/java и распакуйте архив:
sudo tar -xzvf jdk-8u311-linux-x64.tar.gz
Так же, как и при настройке 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
Переменные окружения
Многие программы используют переменную среды JAVA_HOME для того, чтобы определить расположение установки Java. Чтобы установить эту переменную для всех пользователей, сначала необходимо узнать, где именно хранится установка Java. Для этого необходимо выполнить команду:
sudo update-alternatives --config java
В данном случае в системе установлены 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
Необходимо добавьте строку с путём установки JRE или JDK в конец этого файла:
JAVA_HOME="/usr/java/jre1.8.0_311"
Сохраните и закройте файл. Чтобы применить настройки, необходимо перейти в учётную запись root далее перечитать файл выполнив в терминале команду:
source /etc/environment
Установка Java в Arch Linux
JRE
В официальных репозиториях Arch Linux присутствует только OpenJDK, в то время как проприетарная JRE присутствует только в пользовательских репозиториях aur. Для установки JRE необходимо перейти по ссылке официальной страницы JRE в репозитории aur и найти ссылку на GIT репозиторий программы в поле Git Clone URL:
Далее необходимо склонировать данный репозиторий при помощи команды:
git clone https://aur.archlinux.org/jre8.git
Перейдите в скачанный репозиторий:
cd jre8/
Для установки JRE необходимо выполнить команду:
makepkg -si
При появлении фразы Proceed with installation? [Y/n] введите y и нажмите на клавишу Enter:
Установка JRE завершена.
JDK
Как и JRE JDK так же присутствует только в пользовательском репозитории aur. Несмотря на то, что установочный процесс совпадает с установкой JRE, у установки JDK есть одна особенность - с тех пор как пакеты JDK расположенные на сайте Oracle требует авторизации на сайте необходимо заранее скачать пакет JDK иначе установщик выдаст ошибку.
Перейдите на официальный сайт Oracle найдите и скачайте архив с именем jdk-8u301-linux-x64.tar.gz:
Далее склонируйте репозиторий с JDK выполнив команду:
git clone https://aur.archlinux.org/jdk8.git
Переместите ранее скачанный архив в только что склонированный репозиторий при помощи команды:
mv Downloads/jdk-8u301-linux-x64.tar.gz jdk8/
Где Downloads - директория куда был скачен архив, а jdk8/- директория с самим JDK. Перейдите в директорию с JDK и запустите команду для установки:
makepkg -si
При появлении фразы Proceed with installation? [Y/n] введите y и нажмите на клавишу Enter:
После этого установка JDK будет завершена.
Установка Java в CentOS 8
JRE
Для RHEL дистрибутивов, таких как, CentOS, Fedora, RedHat и OpenSUSE есть официальный RPM-пакет. Для начала необходимо скачать пакет с официального сайта Oracle выбрав пакет с именем Linux x64 RPM если используется 64 битная система или выбрать пакет с именем Linux x64 RPM если используется 32 битная система:
Чтобы установить пакет необходимо выполнить команду в терминале:
sudo rpm -i jre-8u311-linux-x64.rpm
После установки можно проверить версию JRE при помощи команды:
java -version
JDK
Средства для разработчиков также можно скачать с официального сайта Oracle выбрав пакет с именем jdk-8u311-linux-x64.rpm для 64 битной системы и выбрав пакет с именем jdk-8u311-linux-i586.rpm для 32 битной системы:
Для установки из терминала, необходимо выполнить команду:
sudo rpm -i jdk-8u311-linux-x64.rpm
Для просмотра версии JDKнеобходимо выполнить команду:
javac -version
Выбор версии Java по умолчанию
Ubuntu 20.04
Для начала необходимо вывести список всех установленных версий Java в системе. Для этого необходимо выполнить команду:
sudo update-alternatives --config java
Если у в вас системе установлено несколько версий Java можно выбрать ту, которая будет использоваться по умолчанию. Так как на данный момент в системе присутствует только 8 версия Java то выбирать версию нет необходимости. Если в системе одновременно присутствуют 2 и более версии, то для выбора версии по умолчанию необходимо ввести цифру, которая будет располагаться напротив нужной версии.
ArchLinux
Для начала просмотрите список установленных сред при помощи команды:
archlinux -java status
Далее установите необходимую версию:
sudo archlinux -java set имя_среды
Пример:
sudo archlinux-java set java-8-jdk
Для проверки версии JDK необходимо выполнить команду:
javac -version
Для проверки версии JRE необходимо выполнить команду:
java -version
CentOS 8.2
Выбрать необходимую версию Java можно с помощью команды ниже (так же, как и в Ubuntu). Необходимо выбрать цифру, соответствующую номеру версии:
sudo update-alternatives --config java
Выводы
В данной статье показан процесс установки и настройки Java в различных дистрибутивах Linux. Если остались вопросы, спрашивайте в комментариях!
Замечательная статья - коротко и ясно.
Небольшое дополнение:
помимо update-alternatives --config java, update-alternatives --config javac и update-alternatives --config javaws, в своё время, при установке с оф. бинарников, мне пришлось ещё много чего update-alternatives'ить и --config'урить, иначе сыпались досадные ошибочки....но это в случае, если установлено несколько версий Java. Здесь описывать не буду - слишком много текста, см. мою инструкцию: http://4pda.ru/forum/index.php?showtopic=209610&st=9320#Spoil-44184239-15
спасибо за статью!
Обьясните пожалуйста для чего нужно прописывать переменные окружения?
Если в системе только один юзер (админ), есть ли смысл в данном действии?
Есть смысл. Количество пользователей здесь не при чём. Как вы собираетесь сообщить программам, где у вас находится Java машина?
Ребята помогите на линуксе новичёк!
После ввода этой команды (sudo apt install oracle-java8-installer)
Вылезла ошибка:
Reading state information... Done
E: Unable to locate package oracle-java8-installer
P.s:Система(Linux mint 1.7.3 Rosa)
🙁 Устарела инструкция, нет нужного пакета в репозитории для Ubunu. Пробовал другие номера версий, но - нет ничего там.
https://losst.pro/ustanovka-java-v-ubuntu-18-04
у меня в ubuntu foccal fossa (20.04) не грузит на get-update
Начинающий линуксоид. Использовал всегда IDM на Windows. Долго искал приличный download manager. Что только не ставил, не приживалось, так как не работало должным образом, прежде всего из-за отсутствия интеграции с браузерами. Вернулся к IDM на вайне, тоже не то, снес. Поставил XDM - это реально работает. Java обязательно. Качайте архив из гитхаба.
https://github.com/subhra74/xdm
Еще надо установить расширение для интеграции.
У меня Chromium, расширение тут для Chromium и подобных браузеров
https://chrome.google.com/webstore/detail/xtreme-download-manager/dkckaoghoiffdbomfbbodbbgmhjblecj?hl
Если кому необходимо, то можно и для Мозилы найти подобное.