Автор выбрал фонд Open Internet/Free Speech Fund для получения пожертвования $100 в рамках программы Write for DOnations.
Java и JVM (виртуальная машина Java) требуются для многих видов программного обеспечения, включая Tomcat, Jetty, Glassfish, Cassandra и Jenkins.
Это руководство поможет вам научиться устанавливать различные версии Java Runtime Environment (JRE) и Java Developer Kit (JDK) с помощью apt
. Вы установите OpenJDK, а также официальные пакеты от Oracle. Затем вы выберете версию, которую предпочитаете использовать в своих проектах. После этого вы сможете использовать JDK для разработки программного обеспечения и Java Runtime для запуска программного обеспечения.
Для данного обучающего модуля вам потребуется следующее:
Самый простой вариант установки Java — использовать версию, входящую в пакет Ubuntu. По умолчанию в пакет Ubuntu 18.04 входит Open JDK (версия JRE и JDK с открытым исходным кодом).
Данный пакет устанавливает версию OpenJDK 10 или 11.
Для установки этой версии нужно вначале обновить указатель пакетов:
- sudo apt update
Затем нужно проверить, выполнялась ли установка Java ранее:
- java -version
Если установка Java не выполнялась, вы увидите следующие результаты:
OutputCommand 'java' not found, but can be installed with:
apt install default-jre
apt install openjdk-11-jre-headless
apt install openjdk-8-jre-headless
apt install openjdk-9-jre-headless
Запустите следующую команду для установки OpenJDK:
- sudo apt install default-jre
Эта команда выполняет установку среды Java Runtime Environment (JRE). Она позволяет запускать практически любое программное обеспечение Java.
Проверьте установку с помощью следующей команды:
- java -version
Вывод должен выглядеть следующим образом:
Outputopenjdk version "10.0.1" 2018-04-17
OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode)
Для компиляции и запуска некоторых специфических программ на базе Java в дополнение к JRE вам может потребоваться комплект разработчика Java Development Kit (JDK). Для установки JDK выполните следующую команду, которая также выполняет установку JRE:
- sudo apt install default-jdk
Проверьте установку JDK, проверив версию javac
, компилятора Java:
- javac -version
Вывод должен выглядеть следующим образом:
Outputjavac 10.0.1
Теперь посмотрим, как указать конкретную версию OpenJDK для установки.
Хотя вы можете просто установить пакет OpenJDK по умолчанию, вы также можете установить и другие версии OpenJDK.
Java 8 — текущая версия с долгосрочной поддержкой, которая все еще поддерживается широким спектром приложений, хотя ее публичная поддержка заканчивается в январе 2019 г. Для установки OpenJDK 8 нужно выполнить следующую команду:
- sudo apt install openjdk-8-jdk
Для проверки установки используется команда
- java -version
Вывод будет выглядеть следующим образом:
Outputopenjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-1-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)
Также можно установить только JRE, для этого нужно выполнить команду sudo apt install openjdk-8-jre
.
В хранилищах Ubuntu содержится пакет, устанавливающий Java 10 или 11. До сентября 2018 г. этот пакет устанавливал OpenJDK 10. После выпуска Java 11 этот пакет устанавливает Java 11.
Для установки OpenJDK 10/11 используется следующая команда:
- sudo apt install openjdk-11-jdk
Чтобы установить только JRE, нужно использовать следующую команду:
- sudo apt install openjdk-11-jre
Теперь посмотрим, как установить официальные версии JDK и JRE от Oracle.
Если вы хотите установить официально распространяемую версию Oracle JDK, вам нужно добавить новое хранилище пакетов для версии, которую вы хотите использовать.
Чтобы установить Java 8 (последняя версия LTS), нужно вначале добавить для нее хранилище пакетов:
- sudo add-apt-repository ppa:webupd8team/java
При добавлении хранилища выводится сообщение следующего вида:
output Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK8). There are no actual Jav
a files in this PPA.
Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webupd8.org/2017/06/why-oracl
e-java-7-and-6-installers-no.html
Update: Oracle Java 9 has reached end of life: http://www.oracle.com/technetwork/java/javase/downloads/j
dk9-downloads-3848520.html
The PPA supports Ubuntu 18.04, 17.10, 16.04, 14.04 and 12.04.
More info (and Ubuntu installation instructions):
- for Oracle Java 8: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html
Debian installation instructions:
- Oracle Java 8: http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html
For Oracle Java 10, see a different PPA: https://www.linuxuprising.com/2018/04/install-oracle-java-10-in-ubuntu-or.html
More info: https://launchpad.net/~webupd8team/+archive/ubuntu/java
Press [ENTER] to continue or Ctrl-c to cancel adding it.
Нажмите ENTER
, чтобы продолжить. Затем обновите список пакетов:
- sudo apt update
После обновления списка пакетов выполните установку Java 8:
- sudo apt install oracle-java8-installer
Ваша система загрузит JDK от Oracle и предложит вам принять лицензионное соглашение. После принятия условий соглашения будет выполнена установка JDK.
Теперь рассмотрим, как выбрать версию Java, которую вы хотите использовать.
На одном сервере может быть установлено несколько версий Java. Задать версию по умолчанию можно через командную строку с помощью команды update-alternatives
.
- sudo update-alternatives --config java
Если вы установили все версии Java, перечисленные в этом обучающем модуле, результат будет выглядеть так:
OutputThere 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 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode
Выберите число, соответствующее версии Java, кототрая будет использоваться по умолчанию, или нажмите ENTER
для сохранения текущих настроек.
Это можно сделать и для других команд Java, например, для компилятора (javac
):
- sudo update-alternatives --config javac
Также эту команду можно использовать для настройки других команд, в том числе keytool
, javadoc
, jarsigner
и т. д.
JAVA_HOME
Многие программы, написанные на Java, используют переменную среды JAVA_HOME
для определения каталога установки Java.
Чтобы задать эту переменную среды, нужно предварительно определить место установки Java. Используйте команду update-alternatives
:
- sudo update-alternatives --config java
Эта команда показывает каждую установку Java и путь установки:
OutputThere 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 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:
В данном случае пути установки выглядят следующим образом:
/usr/lib/jvm/java-11-openjdk-amd64/bin/java
./usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
./usr/lib/jvm/java-8-oracle/jre/bin/java
.Скопируйте путь каталога установки предпочитаемой версии. Откройте каталог /etc/environment
в nano
или другом текстовом редакторе:
- sudo nano /etc/environment
Добавьте в конце этого файла следующую строку и замените выделенный путь скопированным путем:
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/bin/"
При изменении файла будет задан путь JAVA_HOME
для всех пользователей системы.
Сохраните файл и выйдите из редактора.
Снова загрузите файл, чтобы применить изменения к текущему сеансу:
- source /etc/environment
Убедитесь, что переменная среды задана:
- echo $JAVA_HOME
Вы увидите путь, который только что задали:
Output/usr/lib/jvm/java-11-openjdk-amd64/bin/
Другим пользователям для применения этого параметра нужно будет выполнить команду source /etc/environment
или выйти из системы и снова войти в нее.
В этом обучающем модуле вы установили разные версии Java и научились управлять ими. Теперь вы можете устанавливать программное обеспечение, работающее на платформе Java, в том числе Tomcat, Jetty, Glassfish, Cassandra или Jenkins.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.