- Установка Java в Linux
- Чем отличается JDK от JRE
- Установка Java в Linux своими руками
- Установка Java в Ubuntu
- JRE и JDK
- Установка Java в ArchLinux
- Установка Java в CentOS
- Выбор версии Java
- Ubuntu
- ArchLinux
- CentOS
- Настройка переменных окружения
- Выводы
- В какой папке находится default-jdk?
- Как найти JAVA_HOME
- 1. введение
- 2. Специфичные для Windows способы поиска JAVA_HOME
- 3. Специфичные для macOS и Linux способы поиска JAVA_HOME
- 4. Использование Java для поиска JAVA_HOME
- 5. Заключение
- Домашний каталог JAVA в Linux
- 10 ответов
- Как определить, куда установлена Java в CentOS 6.5?
- 3 ответа 3
- Всё ещё ищете ответ? Посмотрите другие вопросы с метками java linux или задайте свой вопрос.
- Похожие
- Подписаться на ленту
Установка Java в Linux
В этой статье речь пойдёт о проприетарной версии Java. Часто происходят ситуации, когда пользователь пытается открыть какую-либо программу на Java, а она либо вообще не запускается, либо пытается это сделать с помощью OpenJDK (Java Development Kit). Но вместо результата вы получаете кучу ошибок (как например с Minecraft). В данных ситуациях вам, скорее всего, поможет установка Java от Oracle.
Я вам расскажу, как установить JRE (Java Runtime Environment) и JDK (Java Development Kit) 8 версии на такие дистрибутивы, как Ubuntu, CentOS и Arch, а также как выбрать нужную среду по умолчанию.
Чем отличается JDK от JRE
- JRE — Java Runtime Environment — это среда выполнения Java. Предназначена для обычного использования. Позволяет запускать приложения, написанные на языке Java.
- JDK— Java Development Kit — стандартная версия платформы Java, предназначенная для разработки. Это специальный пакет разработчика, в который входят документация, различные утилиты, компилятор, библиотеки классов, а также сама JRE.
Установка Java в Linux своими руками
Скачать архив с необходимой вам версией вы можете с официального сайта. Далее вам надо перенести его в желаемую директорию и распаковать. Рекомендую /opt/java, далее она и будет использоваться. Сделайте это, используя следующие команды:
sudo tar -xzf /opt/java/jre*.tar.gz
Где «*» — версия Java.
Загрузите архив со средствами разработчки с официального сайта компании Oracle. Также перенесите его в желаемую директорию и распакуйте:
sudo tar -xzf /opt/java/jdk*.tar.gz
Установка Java в Ubuntu
JRE и JDK
Для установки проприетарной Oracle Java вам необходимо добавить репозиторий, обновить индексы пакетов и установить Java. В Ubuntu, начиная с 18 релиза, это делается автоматически после добавления репозитория.
Внимание! Будут установлены как JRE, так и JDK. Сначала добавим репозиторий и обновим списки пакетов:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
В процессе установки необходимо будет принять лицензионное соглашение:
sudo apt-get install oracle-java8-installer
Установка Java в ArchLinux
В официальных репозиториях есть только OpenJDK. Поэтому придётся воспользоваться пакетом из AUR(вы можете, конечно, руками установить Java от Oracle, но AUR проще). Установка производится всего одной командой:
JDK так же можно установить, используя AUR. Просто выполните команду:
Установка Java в CentOS
Для RHEL, Fedora, Cent OS, OpenSUSE есть официальный RPM-пакет, который вы можете скачать с официального сайта. Чтобы установить пакет из терминала, воспользуйтесь этой командой:
sudo rpm -i /путь/к/файлу/jre-*.rpm
где «*» — версия Java. Или же примените любую графическую утилиту.
Средства для разработчика вы можете скачать на сайте Oracle, ссылка на который есть в верху статьи. Для установки из терминала, используйте команду:
Где «*» — версия Java. «
» — указывает, что путь начинается.
Выбор версии Java
Ubuntu
Для переключения на 8 версию Java используйте следующую команду:
sudo update-java-alternatives -s java-8-oracle
Чтобы автоматически установить переменные среды, воспользуйтесь командой:
sudo apt-get install oracle-java8-set-default
Или же вы можете установить альтернативы сами. Делается это с помощью следующих команд:
sudo update-alternatives —install /usr/bin/java java / usr / lib / jvm / java-8-oracle/bin/java 1
sudo update-alternatives —install / usr / bin / javaс javaс / usr / lib / jvm / java-8-oracle / bin / javaс 1
sudo update-alternatives —install / usr / bin / javaws javaws / usr / lib / jvm /java-8-oracle / bin / javaws 1
Теперь осталось выбрать версии исполняемых файлов java, javaws и javac, которые будут использоваться по умолчанию:
sudo update-alternatives —config java
sudo update-alternatives —config javac
sudo update-alternatives —config javaws
ArchLinux
Для начала просмотрите список установленных сред:
Затем установите необходимую вам:
archlinux-java set имя_среды
archlinux-java set java-8-jre/jre
CentOS
Выбрать необходимую среду можно с помощью команд, данных ниже (так же, как и в Ubuntu). Вам нужно будет просто выбрать цифру, соответствующую номеру версии:
sudo update-alternatives —config java
sudo update-alternatives —config javac
sudo update-alternatives —config javaws
Настройка переменных окружения
Чтобы настройки были доступны для всех пользователей, будем использовать файл /etc/profile. Откройте его для редактирования любым текстовым редактором с помощью команды sudo и добавьте в конец следующие строки:
- export JAVA_HOME=/opt/java/jdk*/
- export JRE_HOME=/opt/java/jdk*/jre
- export PATH=$PATH:/opt/java/jdk*/bin:/opt/java/jdk*/jre/bin
- Вместо пути по умолчанию /opt/java укажите тот, который использовали;
- Если вы используете не JDK, а JRE, то в пути у вас так же будет не «jdk*», а «jre*»;
- «*» — версия Java, которая у вас установлена.
Выводы
В данной статье мы подробно разобрали процесс установки и настройки Java в различных дистрибутивах Linux. Если остались вопросы, спрашивайте в комментариях!
Источник
В какой папке находится default-jdk?
Не слушайте тех, кто в debian/ubuntu/mint вам _не_ _советует_ ставить из пакета, больше проблем получите, да и систему засрёте.
Если поставили из пакета, то сделайте «update-alternatives —config java» , в выводе команды будет нужный вам путь .
TheSpbra1n: Надо заранее привыкать делать все правильно. А java из репов подходит только для запуска плагинчиков в браузере или чего-то еще. Но никак ни для разработки, обучения или тем более продуктива.
PS Несмотря на наши разногласия, приношу Вам извинения за оскорбления, которые у меня вырвались. Извините, был взволнован, предлагаю остаться при своих мнениях, каждый в конце-концов имеет право на свое мнение, и это не повод для оскорблений. Свои посты я отредактирую.
Обосную, почему в debian-base дистрибутивах лучше использовать пакеты:
1. Тот же оракл уже предлагает дистрибутив в виде пакета
2. Ставя пакет — вы знаете, что зависимости удовлетворены, а распаковывая архив — получаете просто набор файлов
3. Ставя другой дистрибутив, который по зависимостям потребует JAVA , вы всё равно поставите пакет, после чего системная java по умолчанию будет направлена на неё
4. Если вы скачали java из архива — руками прописывайте путь до неё в ПО которая будет с ним работать
5. Если несколько разработчиков будут ставить java из архива в разное время, то есть вероятность, что у них будут разные версии ( а если разработчков больше сотни ? )
6. Ставя из пакетов сразу несколько версий ( 6,7,8,9 ) — я переключаюсь на нужную из них одной командой, вам надо будет опять же руками прописывать нужные пути
7. Поддержка серверов в которых «умники» наставили всё из архивов — ужасна
8. Для проверки наличия security апдейтов мне нужно выполнить — apt-get update , вам — мониторить архивы на сайте.
9. Ставя дистрибутивы на сервера из одно и того-же репозитория я гарантирую, что на всех серверах у меня будет стоять одна и та же версия. Вы же вносите хаос, и не дай бог во время деплоя вы заявите, что в репах версия «х.у.10» , а вы разрабатывали ПО под «х.y.16» , потому что такой был архив на сайте
10. На устранение багов и помощь коллегам, при установке из архива, уходит больше времени, первый поставил — но не знает где указать путь до java или как её сделать дефолтной, у другого дефолтная java другая, третий скачал архив в один каталог и случайно захардкодил путь до _своего_ каталога из архива , в итоге: у пятерых так же и работает, а на эксплуатационных серверах не работает.
11. С помощью того же ansible управление серверами можно легко автоматизировать, параллельно устанавливать и обновлять java сразу на куче серверов, а с архивом что? лишний гемморой.
Источник
Как найти JAVA_HOME
Узнайте, что существует несколько способов найти JAVA_HOME, в том числе независимый от платформы.
Автор: baeldung
Дата записи
1. введение
В этом кратком посте мы узнаем, как найти JAVA_HOME в Windows, Mac и Linux.
Как мы все знаем, JAVA_HOME – это переменная среды, которую мы обычно используем для поиска исполняемых файлов java, таких как java и javac .
2. Специфичные для Windows способы поиска JAVA_HOME
Если мы используем Windows в качестве операционной системы, сначала нам нужно открыть нашу командную строку ( cmd ) и ввести:
Если JAVA_HOME определен в нашей среде, то приведенная выше команда распечатает его.
Или мы могли бы попробовать:
Который покажет местоположение исполняемого файла java .
3. Специфичные для macOS и Linux способы поиска JAVA_HOME
Если мы используем macOS или Linux, мы можем открыть наш терминал и ввести:
Если JAVA_HOME определен в нашей среде, то приведенная выше команда распечатает его.
Или мы могли бы попробовать:
Что, вероятно, просто показывает нам /usr/bin/java.
Но на самом деле это не очень полезно, так как это символическая ссылка. Чтобы разгадать это, мы будем использовать dirname и readlink ;
В результате эта команда выводит используемую в данный момент папку java.
4. Использование Java для поиска JAVA_HOME
И, если мы можем запустить java сами, то у нас тоже есть почти независимый от платформы способ:
Выполнение этой команды выводит множество свойств, одним из которых является java.home.
Однако для его анализа нам все равно понадобится инструмент для конкретной платформы.
Для Linux и macOS , давайте использовать grep :
А для Windows давайте использовать findstr :
5. Заключение
С помощью этого быстрого сообщения мы узнали, как найти JAVA_HOME в разных операционных системах.
Если они не сработали, возможно, мы неправильно установили переменную JAVA_HOME при установке Java.
Источник
Домашний каталог JAVA в Linux
есть ли какая-либо команда linux, которую я мог бы использовать, чтобы узнать ? Я попытался распечатать переменные среды («env»), но я не могу найти каталог.
10 ответов
echo $JAVA_HOME напечатает значение, если оно установлено. Однако, если вы не установили его вручную в своих сценариях запуска, он, вероятно, не установлен.
Если вы попытаетесь which java и он ничего не находит, Java не может быть установлен на вашем компьютере или, по крайней мере, не находится на вашем пути. В зависимости от того, какой дистрибутив Linux у вас есть и есть ли у вас root-доступ, вы можете перейти кhttp://www.java.com для загрузки нужной вам версии. Затем вы можете установить JAVA_HOME, чтобы указать этот каталог. Помните, что это просто соглашение и не должно использоваться для определения, установлена ли java или нет.
в Linux вы можете запустить $(dirname $(dirname $(readlink -f $(which javac))))
на Mac вы можете запустить $(dirname $(readlink $(which javac)))/java_home
Я не уверен в windows, но я представляю where javac вы очень близки
Я знаю, что это поздно, но эта команда ищет каталог /usr/, чтобы найти java для вас
FYI, если вы находитесь на Mac, в настоящее время JAVA_HOME находится по адресу
просто еще одно решение, это кросс-платформа (использует java ), и указывает на местоположение jre.
выводит все от java текущие настройки и находит тот, который называется java.home .
чтобы показать значение переменной среды, вы используете:
Так что в вашем случае будет:
если у вас его нет, вы можете добавить в свой :
экспорт JAVA_HOME=$(readlink-f /usr/bin/java | sed «s:bin/java::»)
и она будет динамически меняться при обновлении пакетов.
если $JAVA_HOME определена в вашей среде.
вы можете догадаться об этом из загруженных классов.
этот метод гарантирует, что вы найдете правильное jdk / jre используется в случае нескольких установок.
или через strace :
на терминале, типа:
Если вы ничего не получаете, то ваша переменная среды JAVA_HOME не была установлена. Вы можете попробовать использовать «найти java», чтобы попытаться узнать, где находится ваша установка Java.
вы установили свой JAVA_HOME
- оболочки Korn и bash: экспорт JAVA_HOME=jdk-install-dir
- Bourne shell: JAVA_HOME=jdk-install-dir; экспорт JAVA_HOME
- C shell: setenv JAVA_HOME jdk-install-dir
вот улучшение, захватывая только каталог в stdout:
Источник
Как определить, куда установлена Java в CentOS 6.5?
Как определить, куда установлена Java в CentOS 6.5. Нужно знать, чтобы прописать пути к:
3 ответа 3
Просто java в терминале выполняется?
which java выдаст полный путь до исполняемого файла. Скорее всего это симлинк потому
а там уже будет ясно. Скорее всего на уровень выше просто подняться по пути.
Если программа java установлена из дистрибутивного пакета — то переопределять эти переменные для её функционирования не требуется.
Если же установлена каким-то иным методом — уточняйте необходимую информацию в инструкции по установке.
ls -alFh /etc/alternatives | grep bin/java
Всё ещё ищете ответ? Посмотрите другие вопросы с метками java linux или задайте свой вопрос.
Похожие
Подписаться на ленту
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.10.8.40416
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Источник