Comment installer Java avec apt sur Ubuntu 18.04

L'auteur a sélectionné lesOpen Internet/Free Speech Fund pour recevoir un don de 100 $ dans le cadre du programmeWrite for DOnations.

introduction

Java et la JVM (machine virtuelle de Java) sont nécessaires pour de nombreux types de logiciels, notammentTomcat,Jetty,Glassfish,Cassandra etJenkins.

Dans ce guide, vous installerez différentes versions de Java Runtime Environment (JRE) et du Java Developer Kit (JDK) à l'aide deapt. Vous installerez OpenJDK ainsi que les packages officiels d’Oracle. Vous sélectionnerez ensuite la version que vous souhaitez utiliser pour vos projets. Une fois que vous avez terminé, vous pourrez utiliser le JDK pour développer des logiciels ou utiliser Java Runtime pour exécuter des logiciels.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin de:

Installation du JRE / JDK par défaut

L'option la plus simple pour installer Java consiste à utiliser la version fournie avec Ubuntu. Par défaut, Ubuntu 18.04 inclut Open JDK, qui est une variante open source du JRE et du JDK.

Ce paquet installera OpenJDK 10 ou 11.

  • Avant septembre 2018, cela installera OpenJDK 10.

  • Après septembre 2018, cela installera OpenJDK 11.

Pour installer cette version, commencez par mettre à jour l'index du package:

sudo apt update

Ensuite, vérifiez si Java est déjà installé:

java -version

Si Java n’est pas actuellement installé, vous verrez la sortie suivante:

OutputCommand 'java' not found, but can be installed with:

apt install default-jre
apt install openjdk-11-jre-headless
apt install openjdk-8-jre-headless
apt install openjdk-9-jre-headless

Exécutez la commande suivante pour installer OpenJDK:

sudo apt install default-jre

Cette commande installera l'environnement d'exécution Java (JRE). Cela vous permettra d’exécuter presque tous les logiciels Java.

Vérifiez l'installation avec:

java -version

Vous verrez le résultat suivant:

Outputopenjdk version "10.0.1" 2018-04-17
OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode)

Vous aurez peut-être besoin du Java Development Kit (JDK) en plus du JRE pour compiler et exécuter un logiciel spécifique basé sur Java. Pour installer le JDK, exécutez la commande suivante, qui installera également le JRE:

sudo apt install default-jdk

Vérifiez que le JDK est installé en vérifiant la version dejavac, le compilateur Java:

javac -version

Vous verrez le résultat suivant:

Outputjavac 10.0.1

Voyons ensuite comment spécifier la version d’OpenJDK à installer.

Installation de versions spécifiques d'OpenJDK

Bien que vous puissiez installer le package OpenJDK par défaut, vous pouvez également installer différentes versions d'OpenJDK.

OpenJDK 8

Java 8 est la version actuelle du support à long terme et est toujours largement pris en charge, bien que la maintenance publique se termine en janvier 2019. Pour installer OpenJDK 8, exécutez la commande suivante:

sudo apt install openjdk-8-jdk

Vérifiez que cela est installé avec

java -version

Vous verrez la sortie comme ceci:

Outputopenjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-1-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)

Il est également possible d'installer uniquement le JRE, ce que vous pouvez faire en exécutantsudo apt install openjdk-8-jre.

OpenJDK 10/11

Les référentiels d’Ubuntu contiennent un paquet permettant d’installer Java 10 ou 11. Avant septembre 2018, ce package installera OpenJDK 10. Une fois Java 11 publié, ce package installera Java 11.

Pour installer OpenJDK 10/11, exécutez la commande suivante:

sudo apt install openjdk-11-jdk

Pour installer le JRE uniquement, utilisez la commande suivante:

sudo apt install openjdk-11-jre

Voyons ensuite comment installer les JDK et JRE officiels d’Oracle.

Installation du JDK Oracle

Si vous souhaitez installer le JDK Oracle, qui est la version officielle distribuée par Oracle, vous devez ajouter un nouveau référentiel de packages pour la version que vous souhaitez utiliser.

Pour installer Java 8, qui est la dernière version de LTS, ajoutez d'abord son référentiel de packages:

sudo add-apt-repository ppa:webupd8team/java

Lorsque vous ajoutez le référentiel, vous verrez un message comme celui-ci:

output Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK8). There are no actual Jav
a files in this PPA.

Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webupd8.org/2017/06/why-oracl
e-java-7-and-6-installers-no.html

Update: Oracle Java 9 has reached end of life: http://www.oracle.com/technetwork/java/javase/downloads/j
dk9-downloads-3848520.html

The PPA supports Ubuntu 18.04, 17.10, 16.04, 14.04 and 12.04.

More info (and Ubuntu installation instructions):
- for Oracle Java 8: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

Debian installation instructions:
- Oracle Java 8: http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html

For Oracle Java 10, see a different PPA: https://www.linuxuprising.com/2018/04/install-oracle-java-10-in-ubuntu-or.html

More info: https://launchpad.net/~webupd8team/+archive/ubuntu/java
Press [ENTER] to continue or Ctrl-c to cancel adding it.

Appuyez surENTER pour continuer. Puis mettez à jour votre liste de paquets:

sudo apt update

Une fois la liste de paquets mise à jour, installez Java 8:

sudo apt install oracle-java8-installer

Votre système téléchargera le JDK d’Oracle et vous demandera d’accepter le contrat de licence. Acceptez l'accord et le JDK s'installera.

Voyons maintenant comment sélectionner la version de Java que vous souhaitez utiliser.

Gérer Java

Vous pouvez avoir plusieurs installations Java sur un serveur. Vous pouvez configurer la version par défaut à utiliser sur la ligne de commande à l'aide de la commandeupdate-alternatives.

sudo update-alternatives --config java

Voici à quoi ressemblerait le résultat si vous avez installé toutes les versions de Java décrites dans ce tutoriel:

OutputThere are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
  3            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      manual mode

Choisissez le numéro associé à la version Java pour l'utiliser par défaut, ou appuyez surENTER pour laisser les paramètres actuels en place.

Vous pouvez le faire pour d'autres commandes Java, telles que le compilateur (javac):

sudo update-alternatives --config javac

Les autres commandes pour lesquelles cette commande peut être exécutée incluent, sans s'y limiter:keytool,javadoc etjarsigner.

Définition de la variable d'environnementJAVA_HOME

De nombreux programmes écrits à l'aide de Java utilisent la variable d'environnementJAVA_HOME pour déterminer l'emplacement d'installation de Java.

Pour définir cette variable d’environnement, déterminez d’abord où Java est installé. Utilisez la commandeupdate-alternatives:

sudo update-alternatives --config java

Cette commande affiche chaque installation de Java avec son chemin d'installation:

OutputThere are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1101      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
  3            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      manual mode

Press  to keep the current choice[*], or type selection number:

Dans ce cas, les chemins d'installation sont les suivants:

  1. OpenJDK 11 est situé à/usr/lib/jvm/java-11-openjdk-amd64/bin/java.

  2. OpenJDK 8 est situé à/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java.

  3. Oracle Java 8 est situé à/usr/lib/jvm/java-8-oracle/jre/bin/java.

Copiez le chemin de votre installation préférée. Ensuite, ouvrez/etc/environment en utilisantnano ou votre éditeur de texte préféré:

sudo nano /etc/environment

A la fin de ce fichier, ajoutez la ligne suivante en vous assurant de remplacer le chemin en surbrillance par votre propre chemin copié:

/etc/environment

JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/bin/"

La modification de ce fichier définira le cheminJAVA_HOME pour tous les utilisateurs de votre système.

Enregistrez le fichier et quittez l'éditeur.

Rechargez maintenant ce fichier pour appliquer les modifications à votre session actuelle:

source /etc/environment

Vérifiez que la variable d'environnement est définie:

echo $JAVA_HOME

Vous verrez le chemin que vous venez de définir:

Output/usr/lib/jvm/java-11-openjdk-amd64/bin/

Les autres utilisateurs devront exécuter la commandesource /etc/environment ou se déconnecter et se reconnecter pour appliquer ce paramètre.

Conclusion

Dans ce tutoriel, vous avez installé plusieurs versions de Java et appris à les gérer. Vous pouvez maintenant installer des logiciels fonctionnant sous Java, tels que Tomcat, Jetty, Glassfish, Cassandra ou Jenkins.