Ve světě programování Java byla jedním z předních programovacích jazyků. Java je vyšší programovací jazyk, který se řídí konceptem objektově orientovaného programování. Je to také platformově nezávislý jazyk, který generuje multiplatformní aplikace. Java je všude – v bankovnictví a transakcích, webových frameworcích, hrách (Minecraft) a dokonce i v mobilních operačních systémech (Android).
V této příručce vás provedeme kroky instalace Javy na CentOS a Fedora.
Požadavky
Provádění změn na systémové úrovni vyžaduje oprávnění sudo. Při provádění těchto akcí se však doporučuje používat uživatele bez oprávnění root s oprávněním sudo. V našem návodu se můžete dozvědět, jak spravovat oprávnění sudo pro uživatele pomocí souboru sudoers. Pro podrobné pokyny k nastavení a konfiguraci serveru CentOS se podívejte na tento návod.
Varianty Javy
K dispozici je několik různých edicí Javy:
- Standard Edition - Java SE
- Enterprise Edition - Java EE
- Micro Edition - Java ME
Ačkoli všechny z nich mají své zastoupení v oboru, většina aplikací v Javě je vyvíjena pomocí Java SE. Tento návod ukáže instalaci Java SE.
Java SE se dodává ve dvou typech balíčků:
- JRE: Zkratka pro Java Runtime Environment. Je nezbytné pro spuštění jakékoli aplikace v Javě. Balíček JRE se skládá z potřebných binárních souborů a knihoven, které poskytují JVM (Java Virtual Machine) a nástroje.
- JDK: Zkratka pro Java Development Kit. JDK obsahuje všechny potřebné nástroje a knihovny pro vývoj a ladění aplikací v Javě. Každý balíček JDK obsahuje také kopii JRE.
Existují dvě hlavní implementace Javy: Oracle Java a OpenJDK. OpenJDK je open-source projekt, který tvoří primární základ samotné Javy. Oracle Java implementuje OpenJDK s některým proprietárním kódem.
Obě implementace Javy mají odlišné licenční podmínky. Od verze Java 9 jsou vydání OpenJDK licencována pod GPLv2+CPE (GPLv2 s výjimkou Classpath Exception). Oracle Java je naopak vydávána pod licencí OTN License Agreement pro Java SE.
Změna licenční politiky vyvolala v komunitě kolem Javy velký poprask. Od té doby je k dispozici několik variant OpenJDK: AdoptOpenJDK, GraalVM, Liberica, atd.
Kterou verzi Java SE vybrat?
Se všemi dostupnými možnostmi může být obtížné se rozhodnout, která varianta Javy je pro vás ta pravá. Tato část se bude zabývat rozsahem všech těchto možností.
- JDK vs. JRE
Je to poměrně přímočará volba. JDK je z větší části určeno pro vývojáře v Javě. Chcete se učit nebo vyvíjet aplikace v Javě? Pokud ano, pak je JDK tou správnou volbou.
Pokud potřebujete pouze spouštět programy v Javě, zvolte JRE. Instalace JDK bude také fungovat, ale z hlediska efektivity je to zbytečné.
- OpenJDK vs. Oracle
OpenJDK i Oracle Java jsou k dispozici zdarma. V závislosti na prostředí nasazení však může být Oracle Java zpoplatněna. Ceny jsou propojeny s cyklem vydávání Javy. Každých šest měsíců je vydána nová verze Javy. S každým novým vydáním již starší verze nebudou dostávat žádné záplaty, opravy chyb ani vylepšení ve veřejném zdrojovém kódu.
Pokud jde o prostředí nasazení, Oracle Java je zdarma, pokud je používána pro vzdělávací účely a osobní potřebu. Pokud jde o firemní produkční prostředí, může být zpoplatněna. Pokud firmy potřebují podporu pro starší verzi Javy, Oracle nabízí placenou prodlouženou podporu.
Jste jednotlivec, který používá Javu pouze pro osobní potřebu? Pak vám bude vyhovovat kterákoli z nich. Máte zájem o nasazení Javy pro vaši firmu/podnik? Oracle Java je k dispozici za poplatek. Případně se můžete podívat na varianty OpenJDK. Základní OpenJDK (vanilla) se dodává bez podpory, ale různé varianty OpenJDK (AdoptOpenJDK, Amazon Corretto, Azul Zulu atd.) nabízejí dlouhodobou podporu pro všechna hlavní vydání zdarma.
- Varianta OpenJDK
Pokud jde o funkcionalitu, všechny varianty OpenJDK nabízejí téměř stejný zážitek. Jednotlivé varianty OpenJDK se obecně liší různými drobnými (a některými významnými) funkcemi. Základní (vanilla) OpenJDK sleduje, pokud jde o záplaty a opravy chyb, podobný vzorec jako Oracle Java. Jakmile je vydána nová verze Javy, starší verze již nebudou dostávat žádné budoucí aktualizace. Starší verze OpenJDK jsou však stále k dispozici zdarma.
Zde přicházejí na řadu ostatní varianty. Tyto varianty OpenJDK obecně nabízejí podporu pro starší i nová vydání po delší dobu, než jakou oficiálně nabízí Oracle. Některé z těchto projektů jsou sponzorovány průmyslovými giganty.
Instalace Javy
V době psaní tohoto článku je nejnovější verzí LTS Java 11. Doporučuje se používat verzi Java LTS (dlouhodobá podpora), protože bude dostávat aktualizace po nejdelší dobu. Varianty OpenJDK pro Java 11 LTS mají naplánovanou podporu až do roku 2030.
-
Instalace Oracle JDK
Oracle JDK 16
Oracle nabízí instalační balíčky pro Linux. JDK od Oracle je k dispozici jako balíčky DEB, RPM a TAR.GZ. Protože pracujeme s CentOS a Fedorou, naším cílem je balíček Oracle JDK RPM.
Oracle nabízí ke stažení pro veřejnost pouze nejnovější verzi JDK. Pro přístup ke starším verzím potřebujete účet Oracle. V době psaní tohoto článku je nejnovější verzí Javy Java 16. Nejprve se podívejte na stránku pro stažení Oracle JDK 16:

Chcete-li nainstalovat balíček Java na CentOS, spusťte následující příkaz:
|
1 |
sudo yum localinstall jdk-16.0.1_linux-x64_bin.rpm |

Chcete-li nainstalovat balíček Java na Fedoru, spusťte následující příkaz:
|
1 |
sudo rpm -Uvh --nodeps ./jdk-16.0.1_linux-x64_bin.rpm |
Oracle JDK 11
Podívejte se na stránku pro stažení Oracle JDK 11. Poté stáhněte balíček RPM. Nyní je čas balíček nainstalovat. Chcete-li nainstalovat balíček RPM na CentOS, spusťte následující příkaz:
|
1 |
sudo yum localinstall jdk-11.0.11_linux-x64_bin.rpm |
Chcete-li nainstalovat balíček RPM na Fedoru, spusťte následující příkaz:
|
1 |
sudo rpm -Uvh --nodeps ./ jdk-11.0.11_linux-x64_bin.rpm |
Oracle JDK 8
Ačkoli jsou vydávány novější verze, Java 8 zůstává jednou z nejoblíbenějších verzí mezi vývojáři. Je pochopitelné, že se odvětví pomalu přesouvá k novějším verzím, ale Java 8 se stále řadí vysoko v popularitě. Je také k dispozici jako instalační balíčky RPM z oficiálních stránek Oracle. Podívejte se na stránku pro stažení Oracle JDK 8. Poté stáhněte balíček RPM do svého systému.
Chcete-li nainstalovat balíček RPM na Fedoru, spusťte následující příkaz:
|
1 |
sudo rpm --Uvh --nodeps ./jdk-8u291-linux-x64.rpm |
Chcely-li jej nainstalovat na CentOS, spusťte následující příkaz:
|
1 |
sudo yum localinstall jdk-8u291-linux-x64.rpm |
-
Instalace OpenJDK
OpenJDK 16
Balíčky OpenJDK jsou přímo dostupné z oficiálních balíčkových serverů. Stačí pouze říct správci balíčků, aby balíček nainstaloval. Na CentOS i Fedoře je OpenJDK 16 k dispozici jako balíček java-16-openjdk-devel.
Nainstalujte OpenJDK 16 na CentOS:
|
1 |
sudo yum install java-16-openjdk-devel |
Nainstalujte OpenJDK 16 na Fedoru:
|
1 |
sudo dnf install java-16-openjdk-devel |
OpenJDK 11
Na CentOS i Fedoře je OpenJDK 11 k dispozici jako java-11-openjdk-devel.
Nainstalujte OpenJDK 11 na CentOS:
|
1 |
sudo yum install java-11-openjdk-devel |

Nainstalujte OpenJDK 11 na Fedoru:
|
1 |
sudo dnf install java-11-openjdk-devel |
OpenJDK 8
Naštěstí je OpenJDK 8 také přímo dostupné z oficiálních balíčkových serverů. V CentOS i Fedoře je balíček OpenJDK označen jako java-1.8.0-openjdk-devel.
Nainstalujte OpenJDK 8 na Fedoru:
|
1 |
sudo dnf install java-1.8.0-openjdk-devel |
Nainstalujte OpenJDK 8 na CentOS:
|
1 |
sudo yum install java-1.8.0-openjdk-devel |
Varianty OpenJDK
Varianty OpenJDK jsou zajímavou volbou pro osobní i firemní/podnikové uživatele. Mnohé z nich nabízejí dlouhodobou podporu pro různé verze Javy zcela zdarma.
- Instalace AdoptOpenJDK
AdoptOpenJDK je další poměrně populární variantou OpenJDK. Všechny sestavení OpenJDK jsou k dispozici zdarma. Jedná se o projekt poháněný vývojáři Javy a dodavateli (Amazon, IBM, Azul, Microsoft, Red Hat a další). Binární soubory AdoptOpenJDK nabízejí jak komunitní, tak komerční podporu.
K instalaci AdoptOpenJDK využijeme repozitář třetí strany, který nabízí předpřipravené balíčky DEB a RPM pro Debian/Ubuntu, CentOS/RHEL/Fedora a openSUSE/SLES. Repozitář a dostupné balíčky jsou stručně popsány v tomto článku: AdoptOpenJDK — soubory RPM a DEB.
Nejprve musíme nainstalovat repozitář třetí strany. Je to o něco složitější než ostatní metody popsané v této příručce. Stručně řečeno, budeme muset ručně vytvořit záznam repozitáře. Vytvořte nový repozitář adoptopenjdk.repo. Upozorňujeme, že příkaz musíte spustit jako uživatel root:
|
1 |
cat <<EOF > /etc/yum.repos.d/adoptopenjdk.repo |
Poté zadejte následující kód. V závislosti na vaší verzi CentOS aktualizujte baseurl záznam odpovídajícím způsobem:
|
1 2 3 4 5 6 7 |
[AdoptOpenJDK] name=AdoptOpenJDK baseurl=https://adoptopenjdk.jfrog.io/adoptopenjdk/rpm/centos/7/$(uname -m) enabled=1 gpgcheck=1 gpgkey=https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public EOF |

Na Fedoře místo toho zadejte následující kód. V závislosti na verzi Fedory aktualizujte baseurl záznam odpovídajícím způsobem. Nezapomeňte příkaz spustit jako root:
|
1 |
cat <<EOF > /etc/yum.repos.d/adoptopenjdk.repo |
|
1 2 3 4 5 6 7 |
[AdoptOpenJDK] name=AdoptOpenJDK baseurl=https://adoptopenjdk.jfrog.io/adoptopenjdk/rpm/fedora/33/$(uname -m) enabled=1 gpgcheck=1 gpgkey=https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public EOF |

Repozitář je nyní nakonfigurován. Dále zkontrolujte, zda YUM/DNF nový repozitář načte:
|
1 |
sudo yum repolist |

|
1 |
sudo dnf repolist |

Nyní můžeme nainstalovat balíčky AdoptOpenJDK. Podívejte se na všechny dostupné balíčky:
|
1 |
yum search adoptopenjdk |
|
1 |
dnf search adoptopenjdk |
Chcete-li nainstalovat AdoptOpenJDK 11 (hotspot) na Fedoru, spusťte následující příkaz:
|
1 |
sudo dnf install adoptopenjdk-11-hotspot |

Chcete-li nainstalovat AdoptOpenJDK 11 (hotspot) na CentOS, spusťte následující příkaz:
|
1 |
sudo yum install adoptopenjdk-11-hotspot |
Testování instalace
Po instalaci vybraného JDK proveďte krátký test, abyste ověřili, zda instalace funguje správně:
|
1 |
java -version |
|
1 |
javac -version |

Nastavení výchozí Javy
Pokud má váš systém nainstalováno více JDK, může to vést ke konfliktům. Abyste se vyhnuli problematickému chování, měli byste jedno nastavit jako výchozí JDK. Můžeme ho nastavit pomocí příkazu alternatives. Některé programy vyžadují dodatečnou konfiguraci proměnných prostředí pro určení umístění JDK.
-
Použití alternatives
Na CentOS/Fedoře spravuje příkaz alternatives výchozí příkazy prostřednictvím symbolických odkazů. V případě Javy je to neuvěřitelně užitečné. Chcete-li změnit výchozí Javu, spusťte následující příkaz alternatives:
|
1 |
sudo alternatives --config java |

Ve výstupu alternatives vypíše všechny instalace Javy. Zadejte hodnotu Selection vaší preferované instalace Javy, abyste ji nastavili jako výchozí.
-
Proměnné prostředí
Existuje několik proměnných prostředí vyhrazených pro Javu. Tyto proměnné určují umístění spustitelných souborů Javy. Nejoblíbenější proměnnou prostředí je JAVA_HOME. Její hodnotou je úplná cesta k instalaci Javy. Nastavte proměnnou prostředí:
|
1 |
export JAVA_HOME=<java_path> |

Pro nastavení JAVA_HOME pro všechny uživatele v systému, musíte deklarovat její hodnotu v /etc/environment:
|
1 |
sudo sh -c "echo export JAVA_HOME=<java_path> >> /etc/environment" |
Závěrečné myšlenky
Tato příručka ukázala, jak nainstalovat Javu na CentOS a Fedoru. Představili jsme také různé verze Javy, abyste si mohli vybrat JDK, které nejlépe vyhovuje vašemu stylu.
Java je výkonný programovací jazyk. Je to jedno z mála programovacích prostředí, které staví vývoj napříč platformami na první místo. Téměř jakýkoli program v Javě poběží na jakékoli jiné podporované platformě. Jako vývojář jste osvobozeni od obav z kompatibility platforem. Jako uživatel si můžete být jisti, že požadovaná aplikace ve vašem systému poběží.
Pokud byste chtěli nainstalovat Javu raději na Ubuntu, podívejte se na tento návod.
Příjemnou práci s počítačem!





Komentáře
Zatím žádné komentáře. Buďte první.