Чтобы разобраться, чем различаются Java SE, JRE, JDK посетите страницу https://java9.ru/?p=1
Установка JDK 9 в Ubuntu, Linux Mint, Debian
В репозиториях (источниках приложений) Linux обычно присутствует OpenJDK – это реализация Java от сообщества. Если вы предпочитаете проприетарную версию от Sun Microsystems (Oracle Corporation), то её нужно установить самостоятельно с официального веб-сайта.
Начнём с проверки версии:
java -version
Может быть выведено:
openjdk version "1.8.0_151" OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-1-b12) OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Как можно понять по записям, установлен OpenJDK.
Если вообще никакая версия не установлена, то будет выведено:
Приложение 'java' может быть найдено в следующих пакетах: * default-jre * gcj-5-jre-headless * openjdk-8-jre-headless * gcj-4.8-jre-headless * gcj-4.9-jre-headless * openjdk-9-jre-headless Попробуйте: sudo apt install <выбранный пакет>
Для установки JDK последовательно выполните следующие команды:
sudo su - mkdir -p /opt/java && cd /opt/java
Java 10 доступна только для 64-битных систем. Для её установки выполните команду:
curl -s http://www.oracle.com/`curl -s http://www.oracle.com/technetwork/java/javase/downloads/index.html | grep -o -E '/technetwork/java/javase/downloads/jdk[0-9]+-downloads-[0-9]{1,10}.html' | head -n 1` | grep -o -E 'http://download.oracle.com/otn-pub/java/jdk/[a-z0-9.+_/-]{4,}linux-x64_bin.tar.gz' | tail -n 1 > temp; wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "`cat temp`"; rm temp
Извлекаем и переименовываем архив:
tar -zxvf jdk-*.tar.gz && rm *.tar.gz && mv jdk* jdk-10
Далее используем команду update-alternatives, чтобы сказать системе, где java и её исполнимые файлы установлены.
cd jdk-10 update-alternatives --install /usr/bin/java java /opt/java/jdk-10/bin/java 100 update-alternatives --config java
Выбираем вариант c /opt/java/jdk-10/bin/java
Также может быть выведено сообщение:
Есть только одна альтернатива в группе ссылок java (предоставляющая /usr/bin/java): /opt/java/jdk-10/bin/java Настраивать нечего.
В этом случае также всё в порядке, не нужно ничего дополнительно настраивать.
Скажем системе обновить альтернативы javac (компилятора Java) так:
update-alternatives --install /usr/bin/javac javac /opt/java/jdk-10/bin/javac 100 update-alternatives --config javac
Система может написать, что имеется только одна альтернатива – это тоже нормально.
Похожим образом обновляем альтернативы jar так:
update-alternatives --install /usr/bin/jar jar /opt/java/jdk-10/bin/jar 100 update-alternatives --config jar
Опять же, может оказаться только одна альтернатива, если их там будет несколько, то снова выберите ту, которая /opt/java/jdk-10/bin/java.
Настройка переменных окружения Java.
Выполните в консоли:
export JAVA_HOME=/opt/java/jdk-10/ export JRE_HOME=/opt/java/jdk-10/jre export PATH=$PATH:/opt/java/jdk-10/bin:/opt/java/jdk-10/jre/bin
После перезагрузки значения переменных окружения сбросятся. Чтобы не вводить эти значения каждый раз после перезагрузки можно отредактировать один из трёх файлов:
$HOME/.bashrc
ИЛИ
$HOME/.profile
ИЛИ
/etc/profile
Рекомендуется выбрать /etc/profile, поскольку в этом случае настройки будут доступны для всех пользователей системы. Откройте этот файл:
gedit /etc/profile
И добавьте в самый конец строки:
export JAVA_HOME=/opt/java/jdk-10/ export JRE_HOME=/opt/java/jdk-10/jre export PATH=$PATH:/opt/java/jdk-10/bin:/opt/java/jdk-10/jre/bin
Чтобы убедиться, опять проверим версию Java.
java -version
Вывод:
java version "9.0.1" Java(TM) SE Runtime Environment (build 9.0.1+11) Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
Предположение: Если вы не используете OpenJDK (открытую реализацию java), вы можете удалить её следующим образом:
sudo apt remove openjdk-*