Introduction
Ce tutoriel vous montrera comment installer Java sur les versions actuelles des distributions Linux basées sur RPM : Red Hat Enterprise Linux, CentOS, Fedora et Rocky Linux. Java est un langage de programmation populaire et une plateforme logicielle qui vous permet d’exécuter de nombreuses applications côté serveur.
Ce tutoriel couvre l’installation de la dernière version par défaut de Java, ainsi que la sélection de versions plus anciennes à installer et le basculement entre plusieurs versions dans votre environnement au besoin.
Prérequis
Avant de commencer ce guide, vous devez disposer d’un utilisateur régulier non root avec des privilèges sudo
configurés sur votre serveur – c’est cet utilisateur que vous devez utiliser pour vous connecter à votre serveur. Vous pouvez apprendre à configurer un compte utilisateur régulier en suivant les étapes de notre guide de configuration initiale du serveur pour Rocky Linux 8.
Étape 1 – Installation d’OpenJDK
Il existe trois éditions différentes de la plateforme Java : Standard Edition (SE), Enterprise Edition (EE) et Micro Edition (ME). Ce tutoriel est axé sur Java SE (Java Platform, Standard Edition). Presque tous les logiciels Java open source sont conçus pour s’exécuter avec Java SE.
Il existe deux packages Java SE différents pouvant être installés : l’Environnement d’Exécution Java (JRE) et le Kit de Développement Java (JDK). JRE est une implémentation de la Machine Virtuelle Java (JVM), qui vous permet d’exécuter des applications Java compilées et des applets. Le JDK inclut le JRE ainsi que d’autres logiciels nécessaires à l’écriture, au développement et à la compilation d’applications et d’applets Java.
Il existe également deux implémentations différentes de Java : OpenJDK et Oracle Java. Les deux implémentations sont largement basées sur le même code, mais OpenJDK, l’implémentation de référence de Java, est entièrement open source tandis qu’Oracle Java contient un peu de code propriétaire. La plupart des applications Java fonctionneront bien avec l’une ou l’autre, mais vous devriez utiliser l’implémentation que votre logiciel demande.
Vous pouvez installer différentes versions et versions de Java sur un seul système, mais la plupart des gens n’ont besoin que d’une seule installation. Gardez cela à l’esprit et essayez donc d’installer uniquement la version de Java dont vous avez besoin pour exécuter ou développer votre(s) application(s).
Cette section vous montrera comment installer les packages préconstruits OpenJDK JRE et JDK à l’aide du gestionnaire de packages yum
. yum
est le gestionnaire de packages par défaut pour les distributions utilisant des packages RPM.
Pour installer l’OpenJDK à l’aide de yum, vous pouvez exécuter sudo yum install java
:
Par défaut, essayer d’installer java
sans spécifier de version résultera dans l’installation de la version la plus courante et stable de l’OpenJDK JRE. Comme vous pouvez le voir dans cette sortie, à l’heure actuelle, il s’agit de java-1.8.0-openjdk
:
OutputLast 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
…
Des dépendances multiples seront également fournies avec Java. À la demande de confirmation, saisissez y
puis appuyez sur Entrée pour continuer l’installation. Vous pouvez également être invité à accepter les clés de signature pour les dépôts à partir desquels vous installez:
OutputImporting GPG key 0x6D745A60:
Userid : "Release Engineering <[email protected]>"
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]:
Saisissez y
puis appuyez à nouveau sur Entrée.
Vous devriez maintenant disposer d’une installation Java fonctionnelle. Pour le confirmer, vous pouvez exécuter java -version
pour vérifier la version de Java disponible dans votre environnement:
Remarque: La plupart du temps, les arguments de ligne de commande sont précédés d’un tiret pour les arguments d’une seule lettre, ou de deux tirets pour les arguments d’un mot complet. Java suit une convention différente en utilisant un tiret pour tous les arguments, dans ce cas, -version
.
Outputopenjdk 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)
Les interactions entre les conventions de nommage Java et les conventions de nommage des paquets Linux peuvent être quelque peu déroutantes. Plus tôt dans ce tutoriel, nous avons clarifié la différence entre l’environnement JDK complet pour le développement et l’environnement JRE pour l’exécution des applications Java. Bien que OpenJDK soit le nom de la distribution open source de Java, vous n’avez en fait installé que le JRE OpenJDK. Pour installer le JDK complet d’OpenJDK, vous devez installer le paquet correspondant avec -devel
ajouté à son nom. C’est une convention courante pour les packages de développement pour d’autres environnements de programmation, que Java suit également, bien que la terminologie se chevauche maladroitement ici.
Comme précédemment, vous pouvez installer java-devel
pour obtenir la version par défaut, ou spécifier java-1.8.0-openjdk-devel
:
OutputDigitalOcean 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]:
Après avoir installé ce package, vous devriez disposer d’un environnement OpenJDK complet qui peut compiler et exécuter tout logiciel Java qui n’a pas d’incompatibilités de version spécifiques. Dans la prochaine section, vous installerez et gérerez d’autres versions de Java.
Étape 2 – Installation d’autres versions d’OpenJDK
Plus récemment, OpenJDK a changé son schéma de numérotation des versions pour suivre de plus près les versions d’Oracle Java. Pour installer une version plus récente d’OpenJDK, vous pouvez spécifier le numéro de version dans le nom du paquet, tout comme avec 1.8.0
. Par exemple, pour installer OpenJDK 17, vous pouvez faire yum install java-17-openjdk
:
OutputLast 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
…
Comme précédemment, vous pouvez installer l’environnement JDK complet en ajoutant -devel
au nom du paquet. Cependant, après cela, l’exécution de programmes java
utilisera toujours la version OpenJDK 1.8.0 que vous avez installée précédemment par défaut, ce que vous pouvez confirmer en exécutant à nouveau java -version
:
Outputopenjdk 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)
À l’étape suivante, vous allez gérer les versions installées de Java.
Étape 3 – Définir votre version Java par défaut
Si vous avez installé plusieurs versions de Java, vous voudrez peut-être en définir une par défaut (c’est-à-dire celle qui s’exécutera lorsque l’utilisateur exécutera la commande java
). De plus, certaines applications nécessitent que certains variables d’environnement soient définies pour localiser quelle installation de Java utiliser.
La commande alternatives
, qui gère les commandes par défaut via des liens symboliques, peut être utilisée pour sélectionner la version Java par défaut. Pour répertorier les versions disponibles de Java pouvant être gérées par alternatives
, utilisez alternatives --config java
:
La sortie devrait répertorier les deux versions de Java que vous avez installées :
outputThere 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:
Entrez le numéro de sélection pour choisir quel exécutable java
doit être utilisé par défaut. Il réorganisera les liens symboliques nécessaires sur votre système pour garantir que la commande java
pointe vers le bon ensemble de bibliothèques. Vous pouvez réexécuter cette commande au besoin, et la sortie de java -version
devrait changer en conséquence.
Outputopenjdk 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)
De nombreuses applications Java utilisent également les variables d’environnement JAVA_HOME
ou JRE_HOME
pour déterminer quel exécutable java
utiliser.
Par exemple, si vous avez installé Java à (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin
(c’est-à-dire que votre exécutable java
est situé à <^>(/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java
), vous pouvez définir votre variable d’environnement JAVA_HOME
dans un shell bash ou un script de la manière suivante :
Remarque : La variable d’environnement JAVA_HOME
préfère que vous définissiez le chemin vers votre installation Java se terminant dans le répertoire /jre
. Cette convention peut changer d’une variable à l’autre, il est donc préférable de vérifier attentivement les exemples lors de modifications.
Si vous souhaitez que JAVA_HOME
soit défini par défaut pour chaque utilisateur sur le système, ajoutez la ligne précédente au fichier /etc/environment
. Vous pouvez l’ajouter au fichier en utilisant la redirection shell echo
et >>
, afin d’éviter d’avoir à éditer directement le fichier /etc/environment
, en exécutant cette commande :
Dans la prochaine étape, vous installerez le Java propriétaire d’Oracle aux côtés de vos versions OpenJDK.
Étape 4 – Installation d’Oracle Java
Cette section du guide vous montrera comment installer Oracle Java JRE et JDK (64 bits), la dernière version de ces packages au moment de la rédaction de cet article.
Note : Si vous utilisez le terminal interactif sur cette page, vous ne pourrez pas télécharger et installer Oracle Java dans l’environnement.
Tout au long de cette section, nous utiliserons la commande wget
pour télécharger les packages logiciels Oracle Java. wget
peut ne pas être inclus par défaut dans votre distribution Linux, donc pour suivre, vous devrez l’installer en exécutant :
Vous devez accepter le Contrat de licence du code binaire Oracle pour Java SE, qui est l’une des étapes incluses, avant d’installer Oracle Java.
Note : Pour installer Oracle Java, vous devrez vous rendre sur la Page de téléchargement d’Oracle Java, accepter l’accord de licence, et copier le lien de téléchargement du package Linux x86 approprié .rpm
. Remplacez le lien de téléchargement copié à la place de la partie surlignée de la commande wget
.
Changez vers votre répertoire personnel et téléchargez le RPM Oracle Java avec ces commandes :
Ensuite, installez le RPM avec yum localinstall
(si vous avez téléchargé une version différente, substituez le nom de fichier ici) :
À la invite de confirmation, saisissez y
puis appuyez sur Entrée pour continuer avec l’installation.
Vous pouvez supprimer le fichier d’archive que vous avez téléchargé précédemment :
Vous pouvez maintenant relancer la commande alternatives
et vous devriez voir une troisième option pour utiliser Java Oracle :
outputThere 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:
Les étapes de ce tutoriel devraient être suffisantes pour installer et exécuter n’importe quelle version disponible de Java selon votre cas d’utilisation.
Conclusion
Dans ce tutoriel, vous avez installé et géré plusieurs versions de Java en utilisant le gestionnaire de paquets yum
, la commande alternatives
et les variables d’environnement. Ce sont tous des aspects fondamentaux de la gestion de l’environnement Linux, et Java fournit un exemple particulièrement bon pour travailler avec eux en raison de ses nombreuses versions différentes.
Ensuite, vous voudrez peut-être apprendre comment utiliser Java dans d’autres contextes.
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-java-on-centos-and-fedora