#1 Le 25/06/2022, à 20:19
- olivier252
Installer Java avec ubuntu 20.04
Bonjour,
Contexte :
J'ai supprimé le JDK 11 sur ma machine pensant pouvoir le réinstaller simplement, mais ce n'est pas le cas. Ce JDK était dans un dossier situé dans le path "usr/lib/jvm" . J'ai fait cette manip de suppression car maven qui utilisait cette version de JDK n'arrivait pas à compiler un projet avec un JDK d'une autre version (java 17). Du coup je n'arrive plus à réinstaller java.
Voici ce que j'ai fait :
1°/ j'ai vérifié ma version java actuelle ; avec la commande java -v dont voici le retour :
La commande « java » n'a pas été trouvée, mais peut être installée avec :
sudo apt install default-jre # version 2:1.11-72, or
sudo apt install openjdk-11-jre-headless # version 11.0.15+10-0ubuntu0.20.04.1
sudo apt install openjdk-13-jre-headless # version 13.0.7+5-0ubuntu1~20.04
sudo apt install openjdk-16-jre-headless # version 16.0.1+9-1~20.04
sudo apt install openjdk-17-jre-headless # version 17.0.3+7-0ubuntu0.20.04.1
sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1~20.04
2°/ J'ai donc tenté de réinstaller une autre version du JDK comme ceci :
sudo apt-get update
sudo apt-get install openjdk-17-jdk
Ce qui donne le retour suivant :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
openjdk-17-jdk est déjà la version la plus récente (17.0.3+7-0ubuntu0.20.04.1).
Le paquet suivant a été installé automatiquement et n'est plus nécessaire :
default-jdk-headless
Veuillez utiliser « sudo apt autoremove » pour le supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 8 non mis à jour
3°/Je réexécute java -v : même résultat que ci-dessus au point 1, je n'ai pas de version reconnue.
4°/ je tape la commande
whereis java
Cela me donne 3 chemins
- dans usr/bin j'ai ceci :
- dans etc/
Ces dossiers ne contiennent pas le contenu habituel d'un JDK
- dans usr/share : un dossier java qui contient pleins de jars.
Du coup le problème est que je n'arrive plus à installer un JDK dans le dossier usr/lib/jvm afin que la variable d'environnement JAVA_HOME pointe à nouveau dessus.
J'espère avoir été clair, je pourrai fournir plus de détails qui m'échappent peut-etre.
Merci pour votre aide
Hors ligne
#2 Le 25/06/2022, à 22:46
- inbox
Re : Installer Java avec ubuntu 20.04
Un problème résolu ? Indiquez le en modifiant le titre du sujet.
Hors ligne
#3 Le 26/06/2022, à 03:39
- jplemoine
Re : Installer Java avec ubuntu 20.04
En plus et après ce qu'à demandé Inbox :
which java
sudo apt reinstall openjdk-17-jdk
Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.
Hors ligne
#4 Le 26/06/2022, à 08:27
- olivier252
Re : Installer Java avec ubuntu 20.04
Bonjour et merci pour vos retours
* Pour inbox
java -version :
La commande « java » n'a pas été trouvée, mais peut être installée avec :
[sudo apt install default-jre # version 2:1.11-72, or
sudo apt install openjdk-11-jre-headless # version 11.0.15+10-0ubuntu0.20.04.1
sudo apt install openjdk-13-jre-headless # version 13.0.7+5-0ubuntu1~20.04
sudo apt install openjdk-16-jre-headless # version 16.0.1+9-1~20.04
sudo apt install openjdk-17-jre-headless # version 17.0.3+7-0ubuntu0.20.04.1
sudo apt install openjdk-8-jre-headless # version 8u312-b07-0ubuntu1~20.04
javac -version
La commande « javac » n'a pas été trouvée, mais peut être installée avec :
sudo apt install default-jdk # version 2:1.11-72, or
sudo apt install openjdk-11-jdk-headless # version 11.0.15+10-0ubuntu0.20.04.1
sudo apt install openjdk-13-jdk-headless # version 13.0.7+5-0ubuntu1~20.04
sudo apt install openjdk-16-jdk-headless # version 16.0.1+9-1~20.04
sudo apt install openjdk-17-jdk-headless # version 17.0.3+7-0ubuntu0.20.04.1
sudo apt install openjdk-8-jdk-headless # version 8u312-b07-0ubuntu1~20.04
sudo apt install ecj # version 3.16.0-1
* Pour jplemoine ;
which java
ne retourne rien
sudo apt reinstall openjdk-17-jdk
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Le paquet suivant a été installé automatiquement et n'est plus nécessaire :
default-jdk-headless
Veuillez utiliser « sudo apt autoremove » pour le supprimer.
0 mis à jour, 0 nouvellement installés, 1 réinstallés, 0 à enlever et 8 non mis à jour.
Il est nécessaire de prendre 10,6 ko dans les archives.
Après cette opération, 0 o d'espace disque supplémentaires seront utilisés.
Réception de :1 http://fr.archive.ubuntu.com/ubuntu focal-updates/universe amd64 openjdk-17-jdk amd64 17.0.3+7-0ubuntu0.20.04.1 [10,6 kB]
10,6 ko réceptionnés en 0s (67,9 ko/s)
(Lecture de la base de données... 246338 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../openjdk-17-jdk_17.0.3+7-0ubuntu0.20.04.1_amd64.deb ...
Dépaquetage de openjdk-17-jdk:amd64 (17.0.3+7-0ubuntu0.20.04.1) sur (17.0.3+7-0ubuntu0.20.04.1) ...
Paramétrage de openjdk-17-jdk:amd64 (17.0.3+7-0ubuntu0.20.04.1)
Cette commande a ajouté les dossiers suivants à l'emplacement dans le path où j'avais le JDK 11 au départ :
En revanche maven ne les reconnait pas lorsque j'exécute la commande
mvn -v
Voici le retour :
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
Je vais tenter de régler le problème de JAVA_HOME
EDIT :
Jeviens de reparamétrer JAVA_HOME comme ceci :
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Sans succès, pourtant lorsque je fais un
echo $JAVA_HOME
Le retour est le suivant :
/usr/lib/jvm/java-17-openjdk-amd64
Merci
Dernière modification par olivier252 (Le 26/06/2022, à 08:41)
Hors ligne
#5 Le 26/06/2022, à 08:32
- xubu1957
Re : Installer Java avec ubuntu 20.04
Bonjour,
Donne le retour de :
sudo apt update
Montre aussi d'éventuels paquets cassés :
dpkg -l | grep -v ^ii
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
En ligne
#6 Le 26/06/2022, à 08:34
- jplemoine
Re : Installer Java avec ubuntu 20.04
Normalement,
which java
devrait renvoyer une valeur
il faut alors faire
export JAVA_HOME=xxxx
où xxxx est la valeur renvoyée
Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.
Hors ligne
#7 Le 26/06/2022, à 08:49
- olivier252
Re : Installer Java avec ubuntu 20.04
Re
Juste à titre informatif j'ai édité mon 1er message où j'ai tenté de configurer la variable d'environnement JAVA_HOME
Du coup pour xubu1957
*
sudo apt update
:
rettourne :
Atteint :1 http://fr.archive.ubuntu.com/ubuntu focal InRelease
Atteint :2 https://download.docker.com/linux/ubuntu focal InRelease
Atteint :3 http://fr.archive.ubuntu.com/ubuntu focal-updates InRelease
Atteint :4 http://ppa.launchpad.net/cwchien/gradle/ubuntu focal InRelease
Atteint :5 http://fr.archive.ubuntu.com/ubuntu focal-backports InRelease
Atteint :6 https://dl.google.com/linux/chrome/deb stable InRelease
Atteint :7 http://ppa.launchpad.net/pinta-maintainers/pinta-stable/ubuntu focal InRelease
Atteint :8 http://ppa.launchpad.net/solaar-unifying/stable/ubuntu focal InRelease
Atteint :9 https://packages.microsoft.com/repos/edge stable InRelease
Atteint :10 http://security.ubuntu.com/ubuntu focal-security InRelease
Atteint :11 https://packages.microsoft.com/repos/ms-teams stable InRelease
Atteint :12 https://download.sublimetext.com apt/stable/ InRelease
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
8 paquets peuvent être mis à jour. Exécutez « apt list --upgradable » pour les voir
dpkg -l | grep -v ^ii
retourne
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom Version Architecture Description
+++-==========================================-===================================-============-======================================================================================================
ic dctrl-tools 2.24-3 amd64 Command-line tools to process Debian package information
ic dkms 2.8.1-5ubuntu2 all Dynamic Kernel Module Support Framework
rc linux-image-5.13.0-35-generic 5.13.0-35.40~20.04.1 amd64 Signed kernel image generic
rc linux-image-5.13.0-37-generic 5.13.0-37.42~20.04.1 amd64 Signed kernel image generic
rc linux-image-5.13.0-39-generic 5.13.0-39.44~20.04.1 amd64 Signed kernel image generic
rc linux-image-5.13.0-40-generic 5.13.0-40.45~20.04.1 amd64 Signed kernel image generic
rc linux-image-5.13.0-41-generic 5.13.0-41.46~20.04.1 amd64 Signed kernel image generic
rc linux-image-5.13.0-44-generic 5.13.0-44.49~20.04.1 amd64 Signed kernel image generic
rc linux-modules-5.13.0-35-generic 5.13.0-35.40~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-5.13.0-37-generic 5.13.0-37.42~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-5.13.0-39-generic 5.13.0-39.44~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-5.13.0-40-generic 5.13.0-40.45~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-5.13.0-41-generic 5.13.0-41.46~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-5.13.0-44-generic 5.13.0-44.49~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-30-generic 5.13.0-30.33~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-35-generic 5.13.0-35.40~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-37-generic 5.13.0-37.42~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-39-generic 5.13.0-39.44~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-40-generic 5.13.0-40.45~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-41-generic 5.13.0-41.46~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
rc linux-modules-extra-5.13.0-44-generic 5.13.0-44.49~20.04.1 amd64 Linux kernel extra modules for version 5.13.0 on 64 bit x86 SMP
* jplemoine :
C'est ce que je viens de faire dans l'édition de mon message précédent
"Je viens de reparamétrer JAVA_HOME comme ceci :
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Sans succès, pourtant lorsque je fais un
echo $JAVA_HOME
Le retour est le suivant :
/usr/lib/jvm/java-17-openjdk-amd64
Hors ligne
#8 Le 26/06/2022, à 08:52
- xubu1957
Re : Installer Java avec ubuntu 20.04
Pour purger les résidus de configuration marqués "rc", comme expliqué à la machine à café.
sudo apt purge ~c
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
En ligne
#9 Le 26/06/2022, à 08:55
- olivier252
Re : Installer Java avec ubuntu 20.04
Ok merci, je fais ça tout de suite
Hors ligne
#10 Le 26/06/2022, à 09:04
- olivier252
Re : Installer Java avec ubuntu 20.04
1°/ En fait je viens de me rendre compte que le contenu du dossier java-17-openjdk-amd64 ne contient pas un JDK "classique" ?
Il y a ceci :
Et dans le "bin" il y ajuste un exécutable intitulé "jconsole"
2°/Après quand je fais une recherche dans le répertoire "lib" pour "jvm", j'obtiens 2 dossiers jvm
Et dans le dossier jvm avec le cadenas il y a du coup pleins de dossiers de jdk qui sont vides...
Hors ligne
#11 Le 26/06/2022, à 09:12
- xubu1957
Re : Installer Java avec ubuntu 20.04
Que retourne :
dpkg -l | grep openjdk
?
et :
dpkg -l | grep oracle
sudo update-alternatives --config java
pour suivre ces commandes d'abelthorne.
Dernière modification par xubu1957 (Le 26/06/2022, à 09:34)
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
En ligne
#12 Le 26/06/2022, à 16:10
- olivier252
Re : Installer Java avec ubuntu 20.04
Merci pour ton aide : voici le retour de
dpkg -l | grep openjdk
ii openjdk-11-jdk:amd64 11.0.15+10-0ubuntu0.20.04.1 amd64 OpenJDK Development Kit (JDK)
ii openjdk-11-jdk-headless:amd64 11.0.15+10-0ubuntu0.20.04.1 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-11-jre:amd64 11.0.15+10-0ubuntu0.20.04.1 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-11-jre-headless:amd64 11.0.15+10-0ubuntu0.20.04.1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-17-jdk:amd64 17.0.3+7-0ubuntu0.20.04.1 amd64 OpenJDK Development Kit (JDK)
ii openjdk-17-jdk-headless:amd64 17.0.3+7-0ubuntu0.20.04.1 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-17-jre:amd64 17.0.3+7-0ubuntu0.20.04.1 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-17-jre-headless:amd64 17.0.3+7-0ubuntu0.20.04.1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-8-jdk:amd64 8u312-b07-0ubuntu1~20.04 amd64 OpenJDK Development Kit (JDK)
ii openjdk-8-jdk-headless:amd64 8u312-b07-0ubuntu1~20.04 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-8-jre:amd64 8u312-b07-0ubuntu1~20.04 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-8-jre-headless:amd64 8u312-b07-0ubuntu1~20.04 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
Puis :
dpkg -l | grep oracle
Retour de commande vide
et enfin :
sudo update-alternatives --config java
update-alternatives: avertissement: l'alternative /usr/lib/jvm/java-17-openjdk-amd64/bin/java (qui fait partie du groupe de liens java) n'a pas été trouvée ; suppression de la liste des alternatives
update-alternatives: avertissement: l'alternative /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java (qui fait partie du groupe de liens java) n'a pas été trouvée ; suppression de la liste des alternatives
update-alternatives: avertissement: /etc/alternatives/java pointe dans le vide ; sera mis à jour avec le choix le plus adapté
Il n'existe aucun programme fournissant java
Hors ligne
#13 Le 26/06/2022, à 16:16
- xubu1957
Re : Installer Java avec ubuntu 20.04
Je peux donner des commandes informatives, mais pas plus. ¯\_(ツ)_/¯
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
En ligne
#14 Le 26/06/2022, à 20:44
- olivier252
Re : Installer Java avec ubuntu 20.04
Oui je comprends, merci déjà de m'avoir consacré du temps. Je ne manquerai pas de poster la solution quand j'aurai trouvé la réponse au problème.
Hors ligne
#15 Le 27/06/2022, à 20:59
- olivier252
Re : Installer Java avec ubuntu 20.04
Bonsoir,
Comme promis la réponse après d'intenses souffrances euh... recherches
J'ai carrément supprimé tous les JDK qui pouvaient se promener sur ma machine :
sudo apt-get remove openjdk*
Puis réinstallation du JDK (11 ici) :
sudo apt-get install openjdk-11-jdk
En faisant :
java --version
Le JDK est revenu !
openjdk 11.0.15 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1)
OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.20.04.1, mixed mode, sharing)
Attention, je ne sais pas pourquoi mais mon maven ne fonctionnait plus après la commande de suppresion de tous les JDK j'ai dûle réinstaller...
sudo apt install maven
Le gros de la subtilité réside en ceci pour la config de la variable d'environnement JAVA_HOME.
Auparavant je faisais ceci :
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Mais cela ne fonctionnait pas et à chaque redémarrage de la machine la variable ne persistait pas
En fait pour persister la variable il faut la configurer en créant un fichier jdk_home.sh à l'emplacement /etc/profile.d/
J'ai créé ce fichier puis j'ai configuré JAVA_HOME comme ceci :
export JAVA_HOME=/usr/lib/jvm/java-14-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
Le site qui m'a beaucoup aidé :
https://keepgrowing.in/java/how-to-perm … on-ubuntu/
Voilà, si jamais ça peut aider quelqu'un d'autre un jour...
Dernière modification par olivier252 (Le 27/06/2022, à 21:00)
Hors ligne