Java a JVM (virtuální stroj Java) jsou vyžadovány pro mnoho druhů softwaru, včetně Tomcat, Jetty, Glassfish, Cassandra a Jenkins.
V této příručce prozkoumáme, jak nainstalovat Java Runtime Environment (JRE) a Java Developer Kit (JDK) v Debianu 11.
Zkontrolujte také:
- Jak nainstalovat Java 17 v Ubuntu 20.04
- Jak nainstalovat Java 17 do Fedory 35
- Jak nainstalovat Java 17 na Rocky Linux 8/Centos 8
- Instalace a nastavení Jenkinse na Ubuntu 20.04
Předpoklady
- Aktuální systém Debian 11
- Přístup uživatele root nebo uživatel s přístupem sudo
- Přístup k internetu ze serveru
Obsah
- Zajištění aktuálnosti serveru
- Instalace Java
- Testování instalace
- Přepínání více verzí Java
- Konfigurace proměnné prostředí
Ujištění, že je server aktuální
Než budete pokračovat, ujistěte se, že serverové balíčky a úložiště jsou aktuální. K dosažení cíle použijte tyto příkazy:
sudo apt update
sudo apt -y upgradePokud existují balíčky k aktualizaci, může výše uvedený příkaz trvat několik minut.
Pojďme si také nainstalovat některé běžné balíčky, které bychom mohli potřebovat. Používám textový editor vim, ujistěte se prosím, že je nainstalován pomocí tohoto příkazu:
sudo apt install -y vimInstalace Java
Zkontrolujte, zda je ve vašem systému nainstalována Java.
$ java -version
-bash: java: command not found
 Pokud vidíte java: command not found pak to znamená, že Java není nainstalována. Pokud je nainstalována Java, tento příkaz vytiskne verzi Java
Výchozí úložiště Debianu 11 obsahovalo Java 17. Toto je nejjednodušší způsob instalace JDK pomocí apt package manage.
V Javě můžete hledat pomocí tohoto příkazu:
sudo apt-cache search openjdk | grep 17
Spusťte následující příkaz k instalaci Java 17 na Debian 11. Nainstalujeme JDK i JRE, abychom mohli spouštět Java aplikace a applety.
sudo apt install openjdk-17-jdk openjdk-17-jre -y
Po dokončení instalace spusťte následující příkaz, abyste zkontrolovali, zda funguje správně. Pokud vše funguje správně, měli byste získat výstup podobný tomu, který je zobrazen níže.
$ java -version openjdk version "17-ea" 2021-09-14 OpenJDK Runtime Environment (build 17-ea+19-Debian-1) OpenJDK 64-Bit Server VM (build 17-ea+19-Debian-1, mixed mode, sharing)
Abychom ověřili, zda je JDK správně nainstalován, zkontrolujeme verzi javac, což je kompilátor Java.
$ javac -version javac 17-ea
Testování instalace
 Pojďme v tomto kroku otestovat, zda je Java 17 správně nainstalována, vytvořením jednoduchého skriptu, který vypíše Java is installed properly .
Vytvořte adresář a přepněte se do něj
mkdir simple-app
cd simple-app
 Používám vim k vytváření a úpravě textových souborů v mém systému. V tomto kroku použijte textový editor dle vašeho výběru. Vytvořím soubor Simple.java pomocí tohoto příkazu:
sudo vim Simple.javaPřidejte tento obsah do souboru
public class Simple{
   public static void main(String[] args) {
      System.out.println("Citizix - Java is installed properly");
   }
}Nyní, když jsme vytvořili náš program, musíme zkompilovat zdrojový kód Java do bajtkódu (soubor třídy) pomocí kompilátoru javac.
javac Simple.java
 Získáte nový soubor s názvem Simple.class , což je zkompilovaný soubor třídy Java.
$ ls
Simple.class  Simple.javaVýše uvedený příkaz pouze zkompiluje zdrojový kód Java do bajtkódu. Aby bylo možné program spustit, spustíme příkaz java s názvem souboru naší třídy jako argumentem.
java Simple
 Pokud vše funguje dobře, zobrazí se zpráva „Citizix - Java is installed properly “ na obrazovce.
$ java Simple
Citizix - Java is installed properlyPřepínání více verzí Java
 Pokud máte v systému nainstalovaných více verzí Javy, můžete nakonfigurovat, která verze je java výchozí hodnota příkazu je.
Pomocí tohoto příkazu to nakonfigurujete
sudo update-alternatives --config javaZobrazí se seznam dostupných instalací Java. V tomto případě mám nainstalovanou javu 11 i javu 17. Výchozí verze je označena hvězdičkou (*). Můžete se rozhodnout pro použití jiné verze zadáním čísla do výzvy.
$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java   1111      manual mode
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode
Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/jvm/java-11-openjdk-amd64/bin/java to provide /usr/bin/java (java) in manual modeVe výše uvedeném jsem zadal 1 do výzvy k výběru Java 11. Nyní potvrďte verzi Java:
$ java -version
openjdk version "11.0.12" 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)Konfigurace proměnné prostředí
Některé aplikace Java vyžadují pro správné fungování proměnnou prostředí JAVA_HOME. Některé programy jsou velmi specifické ve způsobu jejich provádění. Pokud JAVA_HOME není nastaveno, zobrazí se chyba. Nastavení JAVA_HOME zabrání vzniku tohoto problému.
Chcete-li zkontrolovat, které instalace a cesty Java existují, použijte tento příkaz:
sudo update-alternatives --config java
 V mém případě dostanu binární instalační cestu Java takto /usr/lib/jvm/java-17-openjdk-amd64/bin/java 
 Tuto cestu nastavíme v souboru prostředí /etc/environment kam mají přístup všechny aplikace. 
Otevřete soubor pomocí vim:
sudo vim /etc/environment
 Nyní musíme přidat řádek exportující domovskou stránku Java do souboru, jako je tento export JAVA_HOME=... nastavení hodnoty na cestu, kterou jsme získali pro naši instalaci Java:
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/bin/javaTento soubor nastaví cestu JAVA_HOME OpenJDK 17 jako proměnné prostředí pro všechny uživatele v systému.
Chcete-li změnu použít, spusťte následující příkaz.
source /etc/environment
Chcete-li ověřit, že byla použita proměnná cesta, spusťte následující příkaz.
echo $JAVA_HOME
Cesta by měla být nastavena na cestu OpenJDK 17, kterou jste zkopírovali výše. Toto je hodnota v mém případě:
$ echo $JAVA_HOME
/usr/lib/jvm/java-17-openjdk-amd64/bin/javaOd této chvíle nemusíte nastavovat cestu JAVA_HOME pokaždé, když používáte programy Java. Také pokud chcete používat jiné verze OpenJDK místo 17, přizpůsobte tomu cestu.
Závěr
V tomto tutoriálu jste se naučili, jak nainstalovat Java 17 na systém Debian 11. Pokud potřebujete další informace o jazyce Java, nahlédněte do jeho oficiální dokumentace.