- Install the Java Runtime Environment
- What you’ll learn
- What you’ll need
- 2. Installing OpenJDK JRE
- 3. Installing Oracle HotSpot JRE
- Downloading the Oracle HotSpot JRE binaries
- Installing
- Post-installation steps
- Need further assistance?
- Установка Java в Ubuntu 20.04
- Вступление
- Перед установкой
- Облачные серверы Selectel
- Какую версию Java выбрать
- Чем JRE отличается от JDK
- OpenJDK или Oracle JDK
- Установка Open JDK
- Установка версии по умолчанию
- Установка определенной версии OpenJDK
- Установка Oracle Java (Oracle JDK)
- Переключение между несколькими версиями Java
- Переменная JAVA_HOME
- Удаление Java
- OpenJDK
- Oracle Java
- Заключение
- Зарегистрируйтесь в панели управления
- Читайте также:
Install the Java Runtime Environment
The Java Runtime Environment (JRE) is required to run Java programs. Nowadays there are many JRE packages available from a variety of projects and companies, but the two most popular on Ubuntu are OpenJDK and Oracle HotSpot. Using one package over the other should not create any functional difference in most applications; however, some prefer OpenJDK over Oracle HotSpot as the former does not contain closed-source components, has a much clearer licensing and support policy, and is maintained as part of the Ubuntu archive, with easier installation and upgrades.
In this guide, we’ll be going through the installation of both JRE packages. Of course, you generally only need to pick the one that best suits your needs and preferences.
What you’ll learn
What you’ll need
That’s all you need. If you have that, let’s proceed to the next step!
2. Installing OpenJDK JRE
With new versions of Java released every 6 months, there are multiple versions available for use. Nowadays, Java 11 is the current Long Term Support (LTS) version, but Java 8 is still widely used. Moreover, the non LTS versions of Java are bringing a steady stream of innovation into the language, and also see some adoption.
Ubuntu offers the default-jre package, which is regularly updated to ship the latest version of the current OpenJDK JRE in Long Term Support (LTS). The default-jre is an excellent choice for most situations, thanks to the outstanding track of backwards compatibility of the Java Virtual Machine.
(Alternatively, you may opt to use a specific Java version, using for example the openjdk-11-jre package; as updates are released for that version of the Java Virtual Machine, that packages will be updated, allowing you to stick to the latest and greatest update of one specific version of the Java language.)
To install the OpenJDK JRE, we run:
sudo apt install default-jre
We can check if OpenJDK JRE was properly installed by running:
It should output the following:
openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2) OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2, mixed mode)
(Although the output may change in the future as new Java versions are promoted to LTS status, or the current LTS version receives updates.)
In the next step we’ll install Oracle HotSpot JRE.
3. Installing Oracle HotSpot JRE
Downloading the Oracle HotSpot JRE binaries
Download JRE binaries in .tar.gz (tarball) by heading over to their website. An Oracle account is needed to download the Oracle HotSpot JRE.
Oracle does not currently offer JRE packages for Java 11 or above from their website so, for this tutorial, we will use the Oracle HotSpot JRE version to be 8u291 (Java 8, update 291).
Installing
Create a directory to install JRE in with:
Move the JRE binaries into the directory:
sudo mv jre-8u291-linux-x64.tar.gz /usr/local/java
Go into the install directory:
sudo tar zxvf jre-8u291-linux-x64.tar.gz
Post-installation steps
To save space, delete the tarball by running:
sudo rm jre-8u291-linux-x64.tar.gz
Let the system know where JRE is installed:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jre1.8.0_291/bin/java" 1
After that’s done, check the installation by running:
It should output the following:
java version "1.8.0_291" Java(TM) SE Runtime Environment (build 1.8.0_291-b10) Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
Need further assistance?
Установка Java в Ubuntu 20.04
Инструкция о том, какие есть версии Java и как установить их в Ubuntu.
Вступление
Java — популярный язык разработки, на котором написано большое количество приложений, поэтому часто требуется запускать программное обеспечение на Java. Для этого Java необходимо установить и определить переменную JAVA_HOME. В этой инструкции расскажем, как выбрать версию Java и как ее поставить на Ubuntu 20.04.
Перед установкой
Мы будем устанавливать Java на облачном сервере с ОС Ubuntu 20.04. Чтобы заказать сервер, откройте панель управления Selectel. Перейдите в раздел Облачная платформа ⟶ Серверы. Нажмите Создать сервер.
В качестве источника для сервера выберите готовый образ Ubuntu 20.04 LTS 64-bit.
Добавьте подсеть с новым плавающим IP-адресом. Он нужен для подключения к облачному серверу по SSH.
Укажите остальные настройки, проверьте стоимость сервера и нажмите Создать. Подробная инструкция по созданию сервера есть в базе знаний.
После создания сервера подключитесь к нему по SSH с помощью команды:
В качестве server_IP используйте плавающий адрес, присвоенный серверу. Плавающий IP-адрес можно посмотреть на странице сервера вкладка Порты. Для подключения понадобится пароль для root, его можно найти на вкладке Консоль.
Облачные серверы Selectel
Какую версию Java выбрать
Сейчас версии Java выходят приблизительно раз в полгода. На момент подготовки статьи самая свежая версия — Java 18.
Чем JRE отличается от JDK
- JRE — среда выполнения, Java Runtime Environment. Наиболее важный компонент JRE — java, он запускает JVM (виртуальную машину Java). JVM же запускает ранее скомпилированные приложения Java, поэтому для создания новых программ JRE недостаточно.
- JDK — Java Development Kit, полноценный SDK, набор для разработки приложений на Java. В JDK входит JRE, компилятор Java (javac) и разные утилиты и инструменты (например, отладчик jdb).
Большое количество приложений на Java требуют установленную JRE для запуска. Если вам требуется только запускать приложения на Java, подойдет JRE.
Если вы планируете разрабатывать приложения, установите JDK. Часто вместо Java используется понятие JDK.
OpenJDK или Oracle JDK
Исходный код Java существует в проекте OpenJDK. Для работы нужны сборки, совместимые со спецификациями Java SE.
- OpenJDK — опенсорсная версия, поддерживается Oracle и сообществом разработчиков;
- Oracle JDK — проприетарная сборка, выпускается и поддерживается компанией Oracle.
Разницы между свежими релизами Oracle JDK и OpenJDK практически нет. Основное отличие между ними — это лицензирование. С 2019 года для коммерческого использования Oracle JDK нужно покупать лицензию, при этом Oracle будет поставлять обновления. Для некоммерческих целей Oracle JDK бесплатна. OpenJDK можно использовать бесплатно в любых целях.
Установка Open JDK
Установка Open JDK выполняется через apt. Перед установкой обновите списки пакетов:
Проверьте, установлена ли Java на сервере:
Если Java не установлена, в выводе будут предложены доступные версии и команды для их установки:
Command 'java' not found, but can be installed with: apt install openjdk-11-jre-headless # version 11.0.15+10-0ubuntu0.20.04.1, or apt install default-jre # version 2:1.11-72 apt install openjdk-13-jre-headless # version 13.0.7+5-0ubuntu1~20.04 apt install openjdk-16-jre-headless # version 16.0.1+9-1~20.04 apt install openjdk-17-jre-headless # version 17.0.3+7-0ubuntu0.20.04.1 apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1~20.04
Можно установить дефолтную версию Java (поставляется с Ubuntu) или поставить отдельные версии.
Установка версии по умолчанию
По умолчанию в стандартные репозитории Ubuntu 20.04 входит Open JDK 11. Чтобы ее установить, используйте:
sudo apt install default-jre
Проверьте, установилась ли версия:
openjdk version "11.0.15" 2022-04-19 OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1) OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1, mixed mode, sharing)
JRE полностью подходит для запуска любого ПО Java. Но, как мы говорили ранее, для компиляции помимо JRE может понадобиться и JDK. Чтобы установить дефолтную версию JDK (при этом установится JRE):
sudo apt install default-jdk
Проверьте версию установившегося компилятора javac:
Установка определенной версии OpenJDK
Если вы хотите поставить определенную версию OpenJDK, то укажите версию в команде.
Например, для установки одиннадцатой версии:
sudo apt install openjdk-11-jdk
Например, можно установить OpenJDK 8, на которой работает большое количество приложений:
sudo apt install openjdk-8-jdk
Посмотрите, какая версия Java установилась:
Установка Oracle Java (Oracle JDK)
Перейдите на официальный сайт Oracle, чтобы скачать архив нужной версии. Мы будем скачивать Java SE Development Kit 16, на момент выпуска статьи это архивный релиз для Java SE Platform.
Скачайте Linux x64 Compressed Archive (для примера мы скачаем архив не на сервер, а на локальный компьютер):
Отключитесь от сервера и скопируйте архив на сервер:
scp Downloads/jdk-16_linux-x64_bin.tar.gz root@server_ip:~
Downloads/jdk-16_linux-x64_bin.tar.gz — путь до архива на вашем компьютере.
Когда загрузка закончится, подключитесь по SSH к облачному серверу. Уже на сервере распакуйте архив:
tar zxvf jdk-16_linux-x64_bin.tar.gz
Добавьте PPA-репозиторий с установщиком Java — linuxuprising:
sudo add-apt-repository ppa:linuxuprising/java
В выводе появится информация о репозиториях и версиях. Нажмите Enter для продолжения.
sУстановите Oracle JDK 18:
sudo apt install oracle-java16-installer --install-recommends
Подтвердите соглашение о лицензии, прокрутив до конца и нажав Ok:
Выберите Yes:
Посмотрите, какая версия установилась:
Ответ будет выглядеть так:
java version "16.0.1" 2021-04-20 Java(TM) SE Runtime Environment (build 16.0.1+9-24) Java HotSpot(TM) 64-Bit Server VM (build 16.0.1+9-24, mixed mode, sharing)
Проверьте, правильная ли версия компилятора javac установилась:
Переключение между несколькими версиями Java
Вы можете установить или изменить дефолтную версию Java, если, например, на сервере установлено несколько версий одновременно:
update-alternatives --config java
В выводе будут показаны все установленные версии, активная будет помечена звездочкой:
There are 3 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-16-oracle/bin/java 1091 manual mode 3 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode Press to keep the current choice[*], or type selection number:
Нажмите Enter, чтобы оставить текущий выбор, или введите номер из столбца Selection той версии, которую хотите сделать дефолтной версией.
То же самое можно сделать с версиями javac:
update-alternatives --config javac
Переменная JAVA_HOME
Множество приложений на Java используют JAVA_HOME. Это переменная окружения — она указывает на путь, по которому установлена Java.
Сначала определите путь, по которому установлена Java:
sudo update-alternatives --config java
В выводе будут все установленные версии и их директории:
There are 3 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-16-oracle/bin/java 1091 manual mode 3 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode Press to keep the current choice[*], or type selection number:
В выводе показаны следующие пути:
- OpenJDK 8 — /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java;
- OpenJDK 11 — /usr/lib/jvm/java-11-openjdk-amd64/bin/java;
- Oracle Java 16 — /usr/lib/jvm/java-16-oracle/bin/java.
Скопируйте путь до активной версии, затем нажмите Enter. В нашем примере активна Oracle Java 16.
Откройте директорию /etc/environment (это предпочтительный путь до JAVA_HOME) в редакторе nano:
Добавьте строку с JAVA_HOME в конце файла. При этом не включайте в путь часть с bin/:
JAVA_HOME="/usr/lib/jvm/java-16-oracle"
Введите Ctrl+X, затем Y+Enter — это сохранит файл и закроет редактор. Путь будет заменен.
Проверьте, что путь до JAVA_HOME задан верно:
В выводе должна быть именно эта директория:
Удаление Java
OpenJDK
Чтобы полностью удалить все версии OpenJDK, которые были установлены, используйте команду:
Для удаления только конкретной версии нужно ее указать, например:
Oracle Java
Чтобы полностью удалить Oracle Java:
sudo apt purge oracle-java*
Для удаления конкретной версии, например, версии 11:
sudo apt purge oracle-java11-installer
Теперь можно удалить PPA-репозиторий:
sudo add-apt-repository --remove ppa:linuxuprising/java
Заключение
В этой инструкции мы рассмотрели отличия версий Java. Посмотрели, как можно запустить виртуальную машину Java (JVM) и как поставить в Ubuntu сразу несколько версий Java.
Зарегистрируйтесь в панели управления
И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.
Читайте также:
Как написать свой REST API на Go? Разрабатываем сокращатель ссылок
Как начать работу с публичным облаком на базе VMware в Selectel
Знакомство с публичным облаком на базе VMware в Selectel