MISE À JOUR : installation sans privilèges root ci-dessous
Je vous conseille de ne pas installer les packages manuellement sur le système ubuntu s'il existe déjà un référentiel (semi-officiel) capable de résoudre votre problème. De plus, utilisez Oracle JDK pour le développement, juste pour éviter les problèmes de compatibilité (très sporadiques) (j'ai essayé il y a de nombreuses années, c'est sûrement mieux maintenant).
Ajoutez le référentiel webupd8 à votre système:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
Installez votre version préférée de jdk (versions de java-6 à java-9 disponibles):
sudo apt-get install oracle-java8-installer
Vous pouvez également installer plusieurs versions de jdk, en mélangeant les versions openjdk et oracle. Ensuite, vous pouvez utiliser la commande update-java-alternatives pour basculer entre la version installée:
# list available jdk
update-java-alternatives --list
# use jdk7
sudo update-java-alternatives --set java-7-oracle
# use jdk8
sudo update-java-alternatives --set java-8-oracle
Exigences
Si vous êtes add-apt-repository: command not found
sûr d'avoir software-properties-common
installé:
sudo apt-get install software-properties-common
Si vous utilisez une ancienne version d'Ubuntu:
sudo apt-get install python-software-properties
Installation JDK sans privilèges root
Si vous n'avez pas de droits d'administrateur sur votre machine cible, votre pari le plus simple est d'utiliser sdkman
pour installer l'openjdk certifié zulu:
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java
REMARQUE : sdkman permet d'installer également le JDK Oracle officiel, bien que ce ne soit pas l'option par défaut. Voir les versions disponibles avec:
sdk ls java
Installez la version choisie avec:
sdk install java <version>
Par exemple:
sdk install java 9.0.1-oracle
Glossaire des commandes
sudo <command> [command_arguments]
: exécutez une commande avec le privilège de superutilisateur.
add-apt-repository <PPA_id>
: Ubuntu (comme tous les dérivés Debian et en général toutes les distributions Linux) a un référentiel principal de paquets qui gèrent des choses comme les dépendances de paquets et la mise à jour. Dans Ubuntu, il est possible d'étendre le référentiel principal à l'aide d'un PPA (Personal Package Archive) qui contient généralement des packages non disponibles dans le système (tout comme oracle jdk) ou des versions mises à jour de ceux disponibles (exemple: LibreOffice 5 dans LTS est disponible uniquement via ce PPA ).
apt-get [install|update|upgrade|purge|...]
: c'est "le" gestionnaire de paquet en ligne de commande utilisé pour manipuler l' état de chaque référentiel sur le système (l'installation / la mise à jour / la mise à niveau peut être considérée comme une modification de l'état actuel du référentiel).
Dans notre cas : avec la commande, sudo add-apt-repository ppa:webupd8team/java
nous informons le système que la prochaine mise à jour du référentiel doit également récupérer les informations sur les packages à partir du dépôt webupd8.
Avec sudo apt-get update
nous mettons à jour le référentiel système (toutes ces opérations nécessitent des privilèges de superutilisateur, nous ajoutons donc sudo aux commandes).
sudo apt-get install oracle-java8-installer
update-java-alternatives (une version java spécifique de update-alternatives ): dans Ubuntu plusieurs packages fournissent les mêmes fonctionnalités (naviguer sur Internet, compiler des mails, éditer un fichier texte ou fournir des exécutables java / javac ...). Pour le système permet de choisir l'outil favoris utilisateur donné une tâche spécifique à l' aide d' un mécanisme symlinks sous /etc/alternatives/
est utilisé. Essayez de mettre à jour le jdk comme indiqué ci-dessus (basculez entre java 7 et java 8) et voyez comment modifier la sortie de cette commande:
ls -l /etc/alternatives/java*
Dans notre cas : sudo update-java-alternatives --set java-8-oracle
mettez à jour les liens symboliques sous / etc / alternatives pour pointer vers les exécutables java-8-oracle.
Suppléments:
man <command>
: commencez à utiliser man pour lire une aide très bien écrite et détaillée sur (presque) chaque commande shell et ses options (chaque commande que je mentionne dans cette petite réponse a une page de manuel, essayez man update-java-alternatives
).
apt-cache search <search_key>
: interrogez le cache APT pour rechercher un package lié à la clé de recherche fournie (peut être le nom du package ou un mot dans la description du package).
apt-cache show <package>
: fournit des informations APT pour un package spécifique (version du package, installée ou non, description).