Java — объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Изначально новый язык программирования назывался Oak (James Gosling) и разрабатывался для бытовой электроники, но впоследствии был переименован в Java и стал использоваться для написания апплетов, приложений и серверного программного обеспечения.
Особенностью технологии Java является гибкая система безопасности благодаря тому, что исполнение программы полностью контролируется виртуальной машиной. Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером) вызывают немедленное прерывание.

file

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

Самым простым способом установки Java является использование версии, распространяемой с Ubuntu.

Для установки обновите индекс пакетов:

apt-get update && apt-get upgrade  

Затем установим Java. Эта команда установит Java Runtime Environment (JRE):

sudo apt-get install default-jre  

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

Установить JDK можно следующей командой:

sudo apt-get install default-jdk  

Установка Oracle JDK

Для установки Oracle JDK, которая является официальной версией Java распространяемой компанией Oracle, вам необходимо выполнить несколько дополнительных шагов.

Сначала добавим PPA компании Oracle:

sudo add-apt-repository ppa:linuxuprising/java  
root@kvmde54-19861:~# sudo add-apt-repository ppa:linuxuprising/java  
 Oracle Java 11 (LTS) and 14 installer for Ubuntu (20.04, 19.10, 18.04, 16.04 and 14.04), 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, 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.:  

Oracle Java 11: https://www.linuxuprising.com/2019/06/new-oracle-java-11-installer-for-ubuntu.html  
Oracle Java 14: https://www.linuxuprising.com/2020/03/how-to-install-oracle-java-14-jdk14-on.html  

Important notice regarding Oracle Java 11 and newer: the Oracle JDK license has changed starting April 16, 2019. The new license permits certain uses, such as personal use and development use, at no cost -- but other uses authorized under prior Oracle JDK licenses may no longer be available. A FAQ is available here: https://www.oracle.com/technetwork/java/javase/overview/oracle-jdk-faqs.html . After this change, new Oracle Java 11 releases (11.0.3 and newer) require signing in using an Oracle account to download the binaries. This PPA has a new installer that requires the user to download the Oracle JDK 11 .tar.gz and place it in a folder, and only then install the "oracle-java11-installer-local" package. Details here:  https://www.linuxuprising.com/2019/06/new-oracle-java-11-installer-for-ubuntu.html  

About Oracle Java 10, 12 and 13: These versions have reached the end of public updates, therefore they are longer available for download. The Oracle Java 10/12/13 packages in this PPA no longer worked due to this, so I have removed them. Switch to Oracle Java 11 or OpenJDK 11 instead, which is long term support, or the latest Java 14.  
 More info: https://launchpad.net/~linuxuprising/+archive/ubuntu/java
Press [ENTER] to continue or ctrl-c to cancel adding it  

gpg: keyring `/tmp/tmpyvsm7f7w/secring.gpg' created  
gpg: keyring `/tmp/tmpyvsm7f7w/pubring.gpg' created  
gpg: requesting key 73C3DB2A from hkp server keyserver.ubuntu.com  
gpg: /tmp/tmpyvsm7f7w/trustdb.gpg: trustdb created  
gpg: key 73C3DB2A: public key "Launchpad PPA for Linux Uprising" imported  
gpg: Total number processed: 1  
gpg:               imported: 1  (RSA: 1)  
OK

Затем обновим список пакетов:

@@
sudo apt-get update  

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

Например установим Oracle JDK 14
Для установки выполните команду:

sudo apt-get install oracle-java14-installer  
root@kvmde54-19861:~# java -version  
java version "14.0.1" 2020-04-14  
Java(TM) SE Runtime Environment (build 14.0.1+7)  
Java HotSpot(TM) 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing)

Управление версиями Java

Одновременно на одном и том же сервере может быть установлено более одной версии Java. Вы можете использовать утилиту update-alternatives для задания версии по умолчанию и создания ссылок (symbolic links) на разные версии.

sudo update-alternatives --config java  

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

root@kvmde54-19861:~# update-alternatives --config java  
There are 2 choices for the alternative java (providing /usr/bin/java).  

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-14-oracle/bin/java             1091      auto mode
* 1            /usr/lib/jvm/java-14-oracle/bin/java             1091      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number:  

Вы можете выбрать номер версии Java, которая будет использоваться по умолчанию. То же самое можно сделать для компилятора Java (javac), генератора документации (javadoc), инструмента для подписи JAR (jarsigner) и других средств.
Введите следующую команду, заменяя command названием необходимого инструмента:

sudo update-alternatives --config command  

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

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

sudo update-alternatives --config java  

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

root@kvmde54-19861:~# sudo update-alternatives --config java  
There are 2 choices for the alternative java (providing /usr/bin/java).  

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-14-oracle/bin/java             1091      auto mode
* 1            /usr/lib/jvm/java-14-oracle/bin/java             1091      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number:  

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

sudo nano /etc/environment  

Добавьте в конце этого файла следующую строку и замените путь скопированным ранее:

JAVA_HOME="/usr/lib/jvm/java-14-oracle/bin/"  

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

Сохраните изменения и закройте файл (CTRL + X, Y, Enter).

Еще раз загрузите файл, для применения изменений к текущему сеансу:

source /etc/environment  

Просмотрите, что переменная среда задана:

echo $JAVA_HOME  

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

root@kvmde54-19861:~# echo $JAVA_HOME  
/usr/lib/jvm/java-14-oracle/bin/

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


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

Обновлено 26 мая 2020 г.