Како да инсталирате Java на CentOS, Rocky Linux, RHEL и Fedora


Вовед

Овој туторијал ќе ви покаже како да инсталирате Java на тековните верзии на дистрибуции на Linux базирани на RPM: Red Hat Enterprise Linux, CentOS, Fedora и Rocky Linux. Јава е популарен програмски јазик и софтверска платформа која ви овозможува да извршувате многу апликации од страна на серверот.

Овој туторијал опфаќа инсталирање на најновата, стандардна верзија на Java, како и избор на постари верзии за инсталација и префрлување помеѓу повеќе верзии во вашата околина по потреба.

Предуслови

Пред да започнете со ова упатство, треба да имате конфигуриран на вашиот сервер редовен корисник без корен со sudo привилегии - тоа е корисникот каков што треба да се најавите на вашиот сервер. Можете да научите како да конфигурирате обична корисничка сметка следејќи ги чекорите во нашиот првичен водич за поставување сервер за Rocky Linux 8.

Чекор 1 – Инсталирање на OpenJDK

Постојат три различни изданија на Java Platform: Standard Edition (SE), Enterprise Edition (EE) и Micro Edition (ME). Овој туторијал е фокусиран на Java SE (Јава платформа, стандардно издание). Речиси целиот Java софтвер со отворен код е дизајниран да работи со Java SE.

Постојат два различни Java SE пакети кои можат да се инсталираат: Java Runtime Environment (JRE) и Java Development Kit (JDK). JRE е имплементација на Java Virtual Machine (JVM), која ви овозможува да извршувате компајлирани Java апликации и аплети. JDK го вклучува JRE како и друг софтвер кој е потребен за пишување, развивање и компајлирање Java апликации и аплети.

Исто така, постојат две различни имплементации на Java: OpenJDK и Oracle Java. Двете имплементации се базираат главно на истиот код, но OpenJDK, референтната имплементација на Java, е целосно со отворен код, додека Oracle Java содржи одреден комерцијален код. Повеќето Java апликации ќе работат добро со било која друга, но треба да ја користите имплементацијата што ја бара вашиот софтвер.

Може да инсталирате различни верзии и изданија на Java на еден систем, но на повеќето луѓе им треба само една инсталација. Имајќи го тоа на ум, обидете се да ја инсталирате само верзијата на Java што ви е потребна за да ја стартувате или развивате вашата апликација(и).

Овој дел ќе ви покаже како да ги инсталирате претходно изградените OpenJDK JRE и JDK пакети користејќи го менаџерот на пакети yum. yum е стандардниот менаџер на пакети за дистрибуции кои користат RPM пакети.

За да го инсталирате OpenJDK користејќи yum, можете да извршите sudo yum install java:

  1. sudo yum install java

Стандардно, обидот да се инсталира java без да се наведе верзија ќе се реши на најчестата стабилна верзија на OpenJDK JRE. Како што можете да видите од овој излез, од ова пишување, тоа е java-1.8.0-openjdk:

Output
Last metadata expiration check: 0:02:38 ago on Tue 22 Feb 2022 04:57:59 PM UTC. Dependencies resolved. ======================================================================================== Package Arch Version Repo Size ======================================================================================== Installing: java-1.8.0-openjdk x86_64 1:1.8.0.322.b06-2.el8_5 appstream 341 k Installing dependencies: alsa-lib x86_64 1.2.5-4.el8 appstream 488 k atk x86_64 2.28.1-1.el8 appstream 270 k avahi-libs x86_64 0.7-20.el8 baseos 61 k copy-jdk-configs noarch 4.0-2.el8 appstream 29 k cups-libs x86_64 1:2.2.6-40.el8 baseos 432 k fribidi x86_64 1.0.4-8.el8 appstream 88 k …

Ќе бидат обезбедени и повеќе зависности заедно со Java. На барањето за потврда, внесете y потоа притиснете Enter за да продолжите со инсталацијата. Може да ви биде побарано да прифатите клучеви за потпишување за складиштата што ги инсталирате од:

Output
Importing GPG key 0x6D745A60: Userid : "Release Engineering <infrastructure@rockylinux.org>" Fingerprint: 7051 C470 A929 F454 CEBE 37B7 15AF 5DAC 6D74 5A60 From : /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial Is this ok [y/N]:

Внесете y потоа повторно притиснете Enter.

Сега треба да имате работна Java инсталација. За да го потврдите ова, можете да извршите java -верзија, за да ја проверите верзијата на Java што сега е достапна во вашата околина:

  1. java -version

Забелешка: Најчесто, на аргументите на командната линија им претходи една цртичка за аргументи со една буква или две цртички за аргументи со целосни зборови. Јава следи различна конвенција за користење на една цртичка за сите аргументи, во овој случај, -верзија.

Output
openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)

Интеракциите помеѓу конвенциите за именување Java и конвенциите за именување пакети на Linux може да бидат донекаде збунувачки. Претходно во ова упатство, ја разјаснивме разликата помеѓу целосната JDK околина за развој и JRE околината за водење Java апликации. Иако OpenJDK е името на дистрибуцијата со отворен код на Java, вие всушност сте го инсталирале само OpenJDK JRE. За да го инсталирате целосниот OpenJDK JDK, треба да го инсталирате соодветниот пакет со -devel додаден на неговото име. Ова е вообичаена конвенција за развојни пакети за други програмски средини, што ја следи и Java, иако терминологијата овде незгодно се преклопува.

Како и досега, можете да инсталирате java-devel за да ја добиете стандардната верзија или да наведете java-1.8.0-openjdk-devel:

  1. sudo yum install java-devel
Output
DigitalOcean Droplet Agent 63 kB/s | 3.3 kB 00:00 Dependencies resolved. ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: java-1.8.0-openjdk-devel x86_64 1:1.8.0.322.b06-2.el8_5 appstream 9.8 M Transaction Summary ======================================================================================== Install 1 Package Total download size: 9.8 M Installed size: 41 M Is this ok [y/N]:

По инсталирањето на овој пакет, треба да имате целосна OpenJDK околина која може да го компајлира и стартува секој Java софтвер кој нема специфични некомпатибилности на верзијата. Во следниот дел, ќе инсталирате и управувате со други верзии на Java.

Чекор 2 – Инсталирање други изданија на OpenJDK

Во поново време, OpenJDK ја промени својата шема за нумерирање на верзии за поблиску да следи со изданијата на Oracle Java. За да инсталирате понова верзија на OpenJDK, можете да го наведете бројот на верзијата во името на пакетот, исто како кај 1.8.0. На пример, за да инсталирате OpenJDK 17, можете да yum инсталирате java-17-openjdk:

  1. sudo yum install java-17-openjdk
Output
Last metadata expiration check: 0:03:36 ago on Tue 22 Feb 2022 05:42:44 PM UTC. Dependencies resolved. ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: java-17-openjdk x86_64 1:17.0.2.0.8-4.el8_5 appstream 244 k Installing dependencies: adwaita-cursor-theme noarch 3.28.0-2.el8 appstream 646 k adwaita-icon-theme noarch 3.28.0-2.el8 appstream 11 M at-spi2-atk x86_64 2.26.2-1.el8 appstream 88 k at-spi2-core x86_64 2.28.0-1.el8 appstream 168 k colord-libs x86_64 1.4.2-1.el8 appstream 234 k java-17-openjdk-headless x86_64 1:17.0.2.0.8-4.el8_5 appstream 41 M lcms2 x86_64 2.9-2.el8 appstream 163 k …

Како и досега, можете да ја инсталирате целосната JDK околина со додавање -devel на името на пакетот. Сепак, после ова, извршувањето на програмите java сè уште ќе ја користи верзијата OpenJDK 1.8.0 што сте ја инсталирале порано стандардно, што можете да го потврдите со повторно вклучување на java -version:

  1. java -version
Output
openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)

Во следниот чекор, ќе управувате со инсталираните верзии на Java.

Чекор 3 - Поставување на вашата стандардна Java верзија

Ако сте инсталирале повеќе верзии на Java, можеби ќе сакате да поставите една како стандардна (т.е. онаа што ќе работи кога корисникот ќе ја изврши командата java). Дополнително, некои апликации бараат одредени променливи на околината да се постават за да се лоцира која инсталација на Java да се користи.

Командата alternatives, која управува со стандардните команди преку симболични врски, може да се користи за да се избере стандардната верзија на Java. За да ги наведете достапните верзии на Java со кои може да управува алтернативи, користете alternatives –config java:

  1. sudo alternatives --config java

Излезот треба да ги наведе двете верзии на Java што сте ги инсталирале:

output
There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java) 2 java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java) Enter to keep the current selection[+], or type selection number:

Внесете го бројот за избор за да изберете која извршна java да се користи стандардно. Ќе ги преуреди потребните симболички врски на вашиот систем за да се осигура дека командата java укажува на правилниот сет на библиотеки. Можете повторно да ја извршите оваа команда по потреба, а излезот на java -верзија треба да се промени соодветно:

  1. java -version
Output
openjdk version "17.0.2" 2022-01-18 LTS OpenJDK Runtime Environment 21.9 (build 17.0.2+8-LTS) OpenJDK 64-Bit Server VM 21.9 (build 17.0.2+8-LTS, mixed mode, sharing)

Многу Java апликации ги користат и променливите на околината JAVA_HOME или JRE_HOME за да одредат која извршна java да се користи.

На пример, ако сте инсталирале Java на (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin (т.е. вашата извршна датотека java се наоѓа на <^>(/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5. x86_64/jre/bin/java), може да ја поставите вашата променлива на околината JAVA_HOME во баш школка или скрипта како вака:

  1. export JAVA_HOME=(/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre

Забелешка: Променливата на околината JAVA_HOME претпочита да ја поставите патеката до инсталацијата на Java која завршува во директориумот /jre. Оваа конвенција може да се менува од една променлива до друга, па затоа е најдобро внимателно да ги проверувате примерите кога правите промени.

Ако сакате JAVA_HOME да биде стандардно поставен за секој корисник на системот, додајте ја претходната линија во датотеката /etc/environment. Можете да го прикачите на датотеката користејќи echo и >> пренасочување на школка, за да избегнете директно уредување на датотеката /etc/environment , со извршување на оваа команда:

  1. sudo sh -c "echo export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre >> /etc/environment"

Во следниот чекор, ќе ја инсталирате комерцијалната Java на Oracle заедно со вашите верзии на OpenJDK.

Чекор 4 – Инсталирање на Oracle Java

Овој дел од водичот ќе ви покаже како да инсталирате Oracle Java JRE и JDK (64-битни), најновото издание на овие пакети во моментот на пишување.

Забелешка:

Во текот на овој дел ќе ја користиме командата wget за да ги преземеме софтверските пакети Oracle Java. wget можеби не е стандардно вклучен во вашата дистрибуција на Linux, па за да го следите ќе треба да го инсталирате со извршување:

  1. sudo yum install wget

Мора да го прифатите Договорот за лиценца за Oracle Binary Code за Java SE, кој е еден од вклучените чекори, пред да го инсталирате Oracle Java.

Забелешка: за да инсталирате Oracle Java, ќе треба да отидете на страницата за преземања на Oracle Java, да го прифатите договорот за лиценца и да ја копирате врската за преземање на соодветниот Linux x86 .rpm пакет. Заменете ја копираната врска за преземање на местото на означениот дел од командата wget.

Променете го вашиот домашен директориум и преземете го Oracle Java RPM со овие команди:

  1. cd ~
  2. wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm"

Потоа инсталирајте го RPM со yum localinstall (ако сте преземале друго издание, заменете го името на датотеката овде):

  1. sudo yum localinstall jdk-17_linux-x64_bin.rpm

На барањето за потврда, внесете y потоа притиснете Enter за да продолжите со инсталацијата.

Може да ја избришете архивската датотека што сте ја преземале претходно:

  1. rm ~/jdk-17_linux-x64_bin.rpm

Сега можете повторно да ја извршите командата alternatives и треба да видите трета опција за користење на Oracle Java:

  1. sudo alternatives --config java
output
There are 3 programs which provide 'java'. Selection Command ----------------------------------------------- 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java) + 2 java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java) * 3 /usr/java/jdk-17.0.2/bin/java Enter to keep the current selection[+], or type selection number:

Чекорите во ова упатство треба да бидат доволни за да се инсталира и стартува која било достапна верзија на Java во зависност од вашиот случај на употреба.

Заклучок

Во ова упатство, инсталиравте и управувавте со повеќе верзии на Java користејќи го менаџерот на пакети yum, командата alternatives и променливите на околината. Сите овие се фундаментални аспекти на управувањето со околината на Linux, а Java дава особено добар пример за работа со нив поради многуте различни верзии.

Следно, можеби ќе сакате да научите како да користите Java во други контексти.