- Установка Java с помощью apt в Debian 9
- Требования
- Установка стандартной версии JRE/JDK
- Установка Oracle JDK
- Установка Oracle Java 8
- Установка Oracle Java 10
- Управление Java
- Переменная JAVA_HOME
- Заключение
- Java Downloads
- JDK Development Kit 20.0.1 downloads
- Release information
- JDK Development Kit 17.0.7 downloads
- Release information
- GraalVM for JDK 20.0.1 downloads
- Release information
- GraalVM for JDK 17.0.7 downloads
- Release information
- Protect your investment—and more
- Java SE subscribers have more choices
- Java SE Development Kit 8u371
- JRE 8
- Server JRE 8
- Which Java 8 package do I need?
- Release information
Установка Java с помощью apt в Debian 9
Java и JVM (Java virtual machine) – очень широко распространённое и востребованное программное обеспечение (к примеру, оно необходимо для работы Tomcat, Jetty, Glassfish, Cassandra и Jenkins).
В этом мануале вы научитесь устанавливать различные версии Java Runtime Environment (JRE) и Java Developer Kit (JDK) с помощью apt. Вы установите OpenJDK, а также официальные пакеты из Oracle. Также вы научитесь выбирать версию по умолчанию. После этого вы сможете использовать JDK для разработки или Java Runtime для запуска программного обеспечения.
Требования
Для работы вам нужен сервер Debian 9, настроенный согласно этому мануалу.
Установка стандартной версии JRE/JDK
Проще всего использовать стандартную версию Java, которая поставляется вместе с Debian. По умолчанию вместе с Debian 9 идет Open JDK, открытая версия JRE и JDK.
Этот пакет установит версию OpenJDK 1.8, совместимую с Java 8, текущей версией Long Term Support, которая по-прежнему широко поддерживается, хотя ее поддержка заканчивается в январе 2019 года.
Чтобы установить эту версию, сначала обновите индекс пакетов:
А затем запросите версию Java (чтобы уточнить, установлена ли Java):
Если на вашем сервере нет Java, вы увидите такой вывод:
-bash: java: command not found
Выполните эту команду, чтобы установить OpenJDK:
sudo apt install default-jre
Эта команда установит Java Runtime Environment (JRE), что позволит вам запускать почти все программы Java.
Вы увидите такой результат:
openjdk version «1.8.0_181»
OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-1~deb9u1-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
В дополнение к JRE вам может понадобиться Java Development Kit (JDK), чтобы скомпилировать и запустить определенное программное обеспечение на базе Java. Чтобы установить JDK, выполните следующую команду, которая также установит и JRE:
sudo apt install default-jdk
Убедитесь, что JDK установлен, проверив версию javac, компилятора Java:
Вы увидите следующий результат:
Установка Oracle JDK
Если вы хотите установить Oracle JDK, официальную версию от Oracle, вам нужно добавить новый репозиторий пакетов той версии, которую вы хотите использовать.
Сначала установите пакет software-properties-common, который добавляет команду apt-get-repository – она нужна для добавления дополнительных репозиториев в список источников.
sudo apt install software-properties-common
Установка Oracle Java 8
Чтобы установить OpenJDK 8, сначала добавьте ее репозиторий:
sudo add-apt-repository ppa:webupd8team/java
После добавления репозитория вы увидите сообщение:
Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK8). There are no actual Java files in this PPA.
Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webupd8.org/2017/06/why-oracle-java-7-and-6-installers-no.html
Update: Oracle Java 9 has reached end of life: http://www.oracle.com/technetwork/java/javase/downloads/jdk9-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, чтобы продолжить. Далее система попробует импортировать ключи GPG, но не сможет найти валидные.
gpg: keybox ‘/tmp/tmpgt9wdvth/pubring.gpg’ created
gpg: /tmp/tmpgt9wdvth/trustdb.gpg: trustdb created
gpg: key C2518248EEA14886: public key «Launchpad VLC» imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
gpg: no valid OpenPGP data found.
Чтобы добавить GPG-ключи вручную, выполните следующую команду:
apt-key adv —keyserver keyserver.ubuntu.com —recv-keys C2518248EEA14886
sudo apt install oracle-java8-installer
Система загрузит JDK и предложит вам принять лицензию. После этого версия JDK будет установлена.
Установка Oracle Java 10
Сначала добавьте репозиторий пакетов для Oracle Java 10.
sudo add-apt-repository ppa:linuxuprising/java
Oracle Java 10 installer
Java binaries are not hosted in this PPA due to licensing. The packages in this PPA download and install Oracle Java 10 (JDK 10), 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/
Issues or suggestions? Leave a comment here: https://www.linuxuprising.com/2018/04/install-oracle-java-10-in-ubuntu-or.html
More info: https://launchpad.net/~linuxuprising/+archive/ubuntu/java
Press [ENTER] to continue or ctrl-c to cancel adding it
Нажмите ENTER, чтобы продолжить. Как и с Java 8, вы увидите сообщение о невалидных ключах.
gpg: keybox ‘/tmp/tmpvuqsh9ui/pubring.gpg’ created
gpg: /tmp/tmpvuqsh9ui/trustdb.gpg: trustdb created
gpg: key EA8CACC073C3DB2A: public key «Launchpad PPA for Linux Uprising» imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: no valid OpenPGP data found.
Импортируйте необходимые ключи.
sudo apt-key adv —keyserver keyserver.ubuntu.com —recv-keys EA8CACC073C3DB2A
sudo apt install oracle-java10-installer
Система загрузит Oracle JDK и предложит вам принять лицензию. После этого версия JDK будет установлена.
Управление Java
На одном сервере может одновременно находиться несколько установок Java. Вы можете выбрать версию Java, которая будет использоваться системой по умолчанию. Для этого существует команда update-alternatives.
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-10-oracle/bin/java 1091 auto mode
* 1 /usr/lib/jvm/java-10-oracle/bin/java 1091 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 to keep the current choice[*], or type selection number:
Теперь можно выбрать номер версии, которая будет использоваться по умолчанию, и нажмите Enter. Подобным образом можно настроить и другие команды Java, например, компилятор (javac).
sudo update-alternatives —config javac
Также эта команда работает для keytool, javadoc, jarsigner и т.п.
Переменная JAVA_HOME
Многие программы используют переменную среды JAVA_HOME, чтобы определить место установки Java. Чтобы установить эту переменную, нужно сначала узнать, где именно хранится установка Java. Для этого используется эта команда:
sudo update-alternatives —config java
Команда покажет все установки Java и путь их установки:
Selection Path Priority Status
———————————————————————————
0 /usr/lib/jvm/java-10-oracle/bin/java 1091 auto mode
* 1 /usr/lib/jvm/java-10-oracle/bin/java 1091 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
В данном случае у установок такие пути:
- Oracle Java 10: /usr/lib/jvm/java-10-oracle/jre/bin/java.
- Oracle Java 8: /usr/lib/jvm/java-8-oracle/jre/bin/java.
- OpenJDK 8: /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java.
Скопируйте путь необходимой версии программы и откройте /etc/environment в текстовом редакторе:
Добавьте следующую строку в конец файла (замените условный путь к программе только что скопированным путём):
При изменении этого файла путь JAVA_HOME будет установлен для всех пользователей вашей системы. Сохраните и закройте файл. Чтобы обновить настройки, введите:
Убедитесь, что переменная среды установлена. Для этого введите:
echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle/jre
Команда должна вернуть установленный вами путь.
Заключение
Теперь вы знаете, как установить несколько версий Java и выбрать версию по умолчанию. Установите несколько программ, основанных на Java, например, Tomcat, Jetty, Glassfish, Cassandra или Jenkins.
Java Downloads
JDK 20 is the latest release of Java SE Platform and JDK 17 LTS is the latest long-term support release for the Java SE platform.
JDK Development Kit 20.0.1 downloads
JDK 20 binaries are free to use in production and free to redistribute, at no cost, under the Oracle No-Fee Terms and Conditions.
JDK 20 will receive updates under these terms, until September 2023 when it will be superseded by JDK 21.
Release information
JDK Development Kit 17.0.7 downloads
JDK 17 binaries are free to use in production and free to redistribute, at no cost, under the Oracle No-Fee Terms and Conditions.
JDK 17 will receive updates under these terms, until September 2024, a year after the release of the next LTS.
Release information
GraalVM for JDK 20.0.1 downloads
GraalVM for JDK 20 binaries are free to use in production and free to redistribute, at no cost, under the GraalVM Free Terms and Conditions.
GraalVM for JDK 20 will receive updates under these terms, until September 2023 when it will be superseded by GraalVM for JDK 21.
Oracle GraalVM uses the Graal just-in-time compiler and includes the Native Image feature as optional early adopter technology.
Native Image is extensively tested and supported for use in production, but is not a conformant implementation of the Java Platform. GraalVM for JDK 20 without the Native Image feature included is available for customers at My Oracle Support.
Release information
GraalVM for JDK 17.0.7 downloads
GraalVM for JDK 17 binaries are free to use in production and free to redistribute, at no cost, under the GraalVM Free Terms and Conditions.
GraalVM for JDK 17 will receive updates under these terms, until September 2024, a year after the release of the next LTS.
Oracle GraalVM uses the Graal just-in-time compiler and includes the Native Image feature as optional early adopter technology.
Native Image is extensively tested and supported for use in production, but is not a conformant implementation of the Java Platform. GraalVM for JDK 17 without the Native Image feature included is available for customers at My Oracle Support.
Release information
Script-friendly Download URLs
The URLs listed above will remain the same for update releases to allow their use in scripts.
Protect your investment—and more
Java SE subscribers get support for JDK 17, receive updates until at least October 2029, are entitled to GraalVM Enterprise, Java Management Service, and bundled patch releases (BPRs) with fixes not yet available to nonsubscribers, and more.
Java SE subscribers have more choices
Also available for development, personal use, and to run other licensed Oracle products.
Java SE Development Kit 8u371
Java SE subscribers will receive JDK 8 updates until at least December 2030.
The Oracle JDK 8 license changed in April 2019
The Oracle Technology Network License Agreement for Oracle Java SE is substantially different from prior Oracle JDK 8 licenses. This 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. Please review the terms carefully before downloading and using this product. FAQs are available here.
Commercial license and support are available for a low cost with Java SE Universal Subscription.
Java SE 8u371 checksums and GPG Keys for RPMs
JRE 8
Java SE Runtime Environment 8u371
Server JRE 8
Server JRE (Java SE Runtime Environment) 8u371
Which Java 8 package do I need?
Software developers: Java SE Development Kit (JDK) For Java developers. Includes a complete JRE plus tools for developing, debugging, and monitoring Java applications.
Running headless Linux workloads at or near your systems’ CPU or memory limits Enterprise Performance Pack brings significant memory and performance improvements including modern garbage collection algorithms, reduced memory usage and many other optimizations. Learn more
Administrators running applications on a server Server Java Runtime Environment (Server JRE). For deploying Java applications on servers. Includes tools for JVM monitoring and tools commonly required for server applications, but does not include browser integration (Java plug-in), auto-update, or an installer. Learn more
End user running Java on a desktop: Java Runtime Environment (JRE) Covers most end-users needs. Contains everything required to run Java applications on your system.