Как установить Java SDK на CentOS?

99

У меня CentOS 5, но я не знаю, как установить Java SDK в Linux.

Где скачать файл RPM и что я могу сделать после полной его установки?

Затем мне нужно установить Tomcat .

Или есть готовый пакет для всех?

nhahtdh
источник
Я подозреваю, что нам нужно начать ясно понимать, когда мы имеем в виду Oracle Java, или можем принять одну из альтернатив с открытым исходным кодом. У Sventek есть хороший ответ, но это не поможет, если у вас есть инструменты с сопровождающими, которые отказываются исправлять проблемы до тех пор, пока они не будут воспроизведены в инструментах Oracle Java / JDK.
Дэнни Стейпл

Ответы:

164

Следующая команда вернет список всех пакетов, непосредственно связанных с Java. Они будут в формате java-<version>.

$ yum search java | grep 'java-'

Если доступных пакетов нет, вам может потребоваться загрузить новый репозиторий для поиска. Предлагаю взглянуть на репо Дага Вирса . После загрузки попробуйте снова выполнить указанную выше команду.

Вы увидите как минимум одну версию пакетов Java, доступную для загрузки. В зависимости от того, когда вы это читаете, последняя доступная версия может отличаться.

java-1.7.0-openjdk.x86_64

Только указанный выше пакет установит только JRE. Чтобы также установить javacи JDK, следующая команда поможет:

$ yum install java-1.7.0-openjdk*

Эти пакеты будут установлены (а также их зависимости):

java-1.7.0-openjdk.x86_64
java-1.7.0-openjdk-accessibility.x86_64
java-1.7.0-openjdk-demo.x86_64
java-1.7.0-openjdk-devel.x86_64
java-1.7.0-openjdk-headless.x86_64
java-1.7.0-openjdk-javadoc.noarch
java-1.7.0-openjdk-src.x86_64
Свентек
источник
64
Проверено на CentOS 6.5. sudo yum install java-1.7.0-openjdk.x86_64устанавливает только JRE ( javacбудет отсутствовать). sudo yum install java-1.7.0-openjdk-develустанавливает JDK.
Thamme Gowda
Я могу подтвердить, что это также работает в более старых версиях CentOS (я только что выполнил yum installкоманду на 5.6).
crmpicco
После установки: настройка iptables на centos 6.5 -> / etc / sysconfig / iptables -> -A INPUT -i eth0 -p tcp -m tcp --dport 8080 -m state --state NEW, ESTABLISHED -j ACCEPT
hpaknia,
1
@ThammeGowdaN Я отправил правку, включая ваши инструкции.
onebree
1
Протестировано и подтверждено на CentOS 7.
onebree
34

@Sventeck, perfecto.

Документы redhat всегда являются отличным источником - хороший учебник, в котором объясняется, как установить JDK через yum, а затем установить путь, можно найти здесь (получайте удовольствие!) - Установите OpenJDK и установите путь $ JAVA_HOME

OpenJDK 6:

yum install java-1.6.0-openjdk-devel

OpenJDK 7:

yum install java-1.7.0-openjdk-devel

Чтобы перечислить все доступные пакеты java openjdk-devel, попробуйте:

yum list "java-*-openjdk-devel"
xpros
источник
1
Протестировано на CentOS 6.4, я подтверждаю, что это способ "centos". Переменная среды JAVA_HOME должна быть установлена ​​в "/ etc / alternatives / jre".
Эммануэль Келлер
Должен любить меня несколько сентос! Эта переменная также может храниться в / etc / environment, где должно существовать большинство общесистемных глобальных переменных. echo JAVA_HOME="path/to/JAVA_HOME" >> /etc/environment
xpros 01
16

yum install java-1.8.0

а потом:

alternatives --config java

и проверьте:

java -version
пользователь831217
источник
13

На centos 7 я просто делаю

sudo yum install java-sdk

Я предполагаю, что у вас уже есть наиболее распространенные репо. Centos просто находит правильный SDK с суфиксом -devel.

fangmobile.com
источник
10

Альтернативный ответ:

sudo yum list \*java-1\* | grep open 

чем выбрать один из списка и установить его

например,

sudo yum install java-1.7.0-openjdk.x86_64
айсберг
источник
6

Вот подробная информация о настройке Java и ее путях в CentOS6.

Ниже приведены инструкции по установке последней версии Java 8:

  1. Загрузите пакет java rpm с сайта Oracle . ( jdk-8-linux-x64.rpm )
  2. Устанавливать с об / мин. ( об / мин -Uvh jdk-8-linux-x64.rpm )
  3. Откройте / etc / profile , установите пути java, сохраните его.
  4. Проверьте путь установки java и версию java с помощью команд: which java , java -version

Теперь вы можете протестировать установку с помощью образца java-программы.

Shasi Kanth
источник
3

Поскольку Oracle вставила некоторый md5hash в свои ссылки для загрузки, невозможно автоматически собрать ссылку для загрузки для командной строки.

Поэтому я повозился с какой-то неприятной командной строкой bash, чтобы получить последнюю ссылку для скачивания jdk, загрузить ее и напрямую установить через rpm. Для всех кому интересно:

wget -q http://www.oracle.com/technetwork/java/javase/downloads/index.html -O ./index.html && grep -Eoi '] +>' index.html | grep -Eoi '/technetwork/java/javase/downloads/jdk8-downloads-[0-9 visible+.html' | (голова -n 1) | awk '{print " http://www.oracle.com " $ 1}' | xargs wget --no-cookies --header "Cookie: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -O index.html -q && grep -Eoi '"filepath": "[^"] + jdk-8u [0-9] + - linux-x64.rpm "' index.html | grep -Eoi 'http: [ ^ "] + '| xargs wget --no-cookies --header "Cookie: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -q -O ./jdk8.rpm && sudo rpm -i ./jdk8.rpm

Смелая часть должна быть заменена пакетом по своему вкусу.

Бен Херфурт
источник
1
Праведный взлом.
Аарон Альтман
Я использовал аналогичный подход в сценарии bash, чтобы получить последние ссылки для загрузки JRE и JDK для версий 8 и 9. Его можно найти в этой теме в качестве ответа .
U880D
2

Если вам нужен Oracle JDK и вы не хотите использовать yum / rpm, см. Этот ответ здесь:

Вместо загрузки Java JDK в Linux через wget отображается страница лицензии.

Согласно этому сообщению, вы можете автоматизировать загрузку архива, используя curl и указав заголовок cookie.

Затем вы можете поместить содержимое tarball в нужное место и добавить java в свой PATH, например:

curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz > jdk.tar.gz

tar xzvf jdk.tar.gz
sudo mkdir /usr/local/java
sudo mv jdk1.8.0_45 /usr/local/java/
sudo ln -s /usr/local/java/jdk1.8.0_45 /usr/local/java/jdk

sudo vi /etc/profile.d/java.sh
export PATH="$PATH:/usr/local/java/jdk/bin"
export JAVA_HOME=/usr/local/java/jdk

source /etc/profile.d/java.sh
Энтони Хейворд
источник
0

используйте следующие команды для установки oracle java8 через терминал

Шаг -1) Посетите страницу загрузки Oracle JDK, найдите версию RPM

Шаг 2) Загрузите oracle java 8, используя команду ниже wget --header "Cookie: oraclelicense = accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441 /jdk-8u121-linux-x64.rpm

Шаг -3) Установите java8, используя команду ниже sudo yum localinstall jdk-8u121-linux-x64.rpm Теперь JDK должен быть установлен в /usr/java/jdk1.8.0_121 Шаг -4) Удалите загруженный файл .rpm, чтобы использовать космос. rm jdk-8u121-linux-x64.rpm

Шаг -5) Проверьте Java с помощью команды java -version

Шаг -6) Если в CentOS установлено несколько JDK, вы можете использовать команду alternatives, чтобы установить альтернативы java sudo по умолчанию --config java

Шаг -7) Необязательно установить переменные среды JAVA_HOME. скопируйте путь установки jdk, т.е. /usr/java/jdk1.8.0_121, используйте команду ниже для экспорта домашнего экспорта java JAVA_HOME = / usr / java / jdk1.8.0_121 export PATH = $ PATH: $ JAVA_HOME

Дилип Д
источник
0

Я написал сценарий оболочки для установки / удаления java на centos. Вы можете сделать это, просто запустив оболочку. Ядро этой оболочки:

1.download the jdk rpm(RedHat Package Manager) package.
2.install java using rpm.

Вы можете увидеть более подробную информацию здесь: https://github.com/daikaixian/WaterShell/tree/master/program_installer

Надеюсь, это сработает для вас.

Дай Кайсянь
источник
0

введите описание изображения здесь

Вот что я сделал:

  1. Сначала я загрузил .tarфайл для Java JDK и JRE с сайта Oracle.

  2. Распакуйте .tarфайл в папку opt.

  3. Я столкнулся с проблемой, из-за которой, несмотря на установку переменных среды JAVA_HOMEи PATHдля Java 9, Java 8 по-прежнему отображалась как среда выполнения. Следовательно, я сделал символическую ссылку из каталога Java 9.0.4 на /user/binиспользование lnкоманды.

  4. Я использовал java -versionкоманду, чтобы проверить, какая версия java в настоящее время установлена ​​в качестве моей среды выполнения java по умолчанию.

Сангита Гупта
источник
0

Чтобы установить OpenJDK 8 JRE с помощью yum с пользователем без полномочий root, выполните эту команду:

sudo yum установить java-1.8.0-openjdk

чтобы проверить java -версию

мухаммад шахан
источник