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