Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/06/2021, à 14:36

Seth-be

Mise à jour / changement de version de Java

Bonjour,
Il semble que ma version de java ne permette pas d'accéder à une application nécessaire pour un service administratif. J'essaie de mettre à jour mais ma version ne change pas malgré l'essai de plusieurs méthodes...

user@user-X411UA:~$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
user@user-X411UA:~$ sudo update-alternatives --config java
[sudo] Mot de passe de user :
Il existe 4 choix pour l'alternative java (qui fournit /home/user/java).

  Sélection   Chemin                                          Priorité  État
------------------------------------------------------------
  0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode automatique
* 1            /home/user/java/jre1.8.0_291/bin/java            1         mode manuel
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode manuel
  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      mode manuel
  4            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      mode manuel

Avez-vous une idée ?
Merci !!!

Hors ligne

#2 Le 04/06/2021, à 15:09

abelthorne

Re : Mise à jour / changement de version de Java

Tu as essayé de sélectionner OpenJDK 11 (le choix n° 2) dans update-alternatives ?

Là, tu as quatre versions installées :
1 : un Java a priori en version 8 (proprio ?) installé localement dans ton dossier perso et sélectionné comme choix par défaut ;
2 : OpenJDK 11 installé au niveau système ;
3 : OpenJDK 8 installé au niveau système ;
4 : Java 8 version Oracle installé au niveau système (via un dépôt tiers ou un deb).

Le choix 0 utiliserait la version la plus récente (OpenJDK 11) mais c'est le 1 (ta version locale) qui est sélectionnée.

Hors ligne

#3 Le 04/06/2021, à 15:17

Seth-be

Re : Mise à jour / changement de version de Java

Oui, quel que soit mon choix sur update-alternatives je garde la même résponse sur java -version...

user@user-X411UA:~$ sudo update-alternatives --config java
[sudo] Mot de passe de user :
Il existe 4 choix pour l'alternative java (qui fournit /home/user/java).

  Sélection   Chemin                                          Priorité  État
------------------------------------------------------------
* 0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode automatique
  1            /home/user/java/jre1.8.0_291/bin/java            1         mode manuel
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode manuel
  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      mode manuel
  4            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      mode manuel

update-alternatives: avertissement: forçage de la réinstallation de l'alternative /usr/lib/jvm/java-11-openjdk-amd64/bin/java car le groupe de liens java est cassé
update-alternatives: avertissement: /home/user/java ne sera pas remplacé par un lien
user@user-X411UA:~$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
user@user-X411UA:~$

Je ne comprends pas pourquoi les changements ne s'appliquent pas :(

Hors ligne

#4 Le 04/06/2021, à 15:23

abelthorne

Re : Mise à jour / changement de version de Java

Ton dossier ~/bin étant dans le PATH et prioritaire sur le reste, j'ai l'impression que si tu tapes la commande java ça te tient pas compte des alternatives, ça lance juste automatiquement la commande qui est trouvée en premier dans le PATH. Mais c'est bizarre, le numéro de version n'a pas l'air de correspondre exactement.

Essaie de déplacer ce java de ~/bin ailleurs (dans ton dossier perso, sur le bureau...) : que donne alors la commande java --version et est-ce que la version manquante apparaît toujours dans les alternatives ?

Dernière modification par abelthorne (Le 04/06/2021, à 15:23)

Hors ligne

#5 Le 04/06/2021, à 16:22

Seth-be

Re : Mise à jour / changement de version de Java

Pas sûr de comprendre ques java déplacer...
Et de fait voilà le PATH :
~$ echo ${PATH}
/home/user/bin:/home/user/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin

Hors ligne

#6 Le 04/06/2021, à 16:25

abelthorne

Re : Mise à jour / changement de version de Java

Ouvre ton dossier perso et va dans le dossier bin qui s'y trouve, tu devrais voir un exécutable "java". Déplace-le ailleurs, par exemple dans ton dossier perso en remontant d'un cran ou sur le bureau...

Dernière modification par abelthorne (Le 04/06/2021, à 16:25)

Hors ligne

#7 Le 04/06/2021, à 16:34

Seth-be

Re : Mise à jour / changement de version de Java

Je n'ai pas de dossier bin dans mon dossier perso !?
Dans /usr oui mais pas d'executable java. J'ai javac, javah, javap, javaws
J'avoue que je n'y comprends pas grand chose... Cela dit ce n'est pas du tout mon domaine ! J'essaie de me débrouiller ;-)

Hors ligne

#8 Le 04/06/2021, à 16:38

abelthorne

Re : Mise à jour / changement de version de Java

Ah oui, au temps pour moi, j'ai mal lu le retour, c'est dans un dossier java. Du coup, il n'est pas du tout dans le PATH...

Que te retournent les deux commandes suivantes ?

/home/user/java/jre1.8.0_291/bin/java --version
/usr/lib/jvm/java-11-openjdk-amd64/bin/java --version

Dernière modification par abelthorne (Le 04/06/2021, à 17:22)

Hors ligne

#9 Le 04/06/2021, à 17:04

ssdg

Re : Mise à jour / changement de version de Java

Seth-be a écrit :

Je n'ai pas de dossier bin dans mon dossier perso !?
Dans /usr oui mais pas d'executable java. J'ai javac, javah, javap, javaws
J'avoue que je n'y comprends pas grand chose... Cela dit ce n'est pas du tout mon domaine ! J'essaie de me débrouiller ;-)

Tu as raison, c'est sans doute du à une lecture trop rapide du fil (j'ai du m'y reprendre à plusieurs fois pour lire cette ligne correctement:
  1            /home/user/java/jre1.8.0_291/bin/java            1         mode manuel


Pourrais tu faire un

which java

?


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#10 Le 04/06/2021, à 18:06

Seth-be

Re : Mise à jour / changement de version de Java

Voici :

user@user-X411UA:~$ /home/user/java/jre1.8.0_291/bin/java --version
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
user@user-X411UA:~$ /usr/lib/jvm/java-11-openjdk-amd64/bin/java --version
openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
user@user-X411UA:~$ which java
/usr/lib/jvm/java-8-oracle/bin/java

Hors ligne

#11 Le 04/06/2021, à 18:10

abelthorne

Re : Mise à jour / changement de version de Java

Quel bordel.

Si tu relance update-alternatives, il est sur le choix 0, c'est ça ? Si tu le passes sur le choix 2 (OpenJDK 11 mais en manuel), ça donne quoi pour java --version et which java ?

Accessoirement, est-ce que tu as besoin de garder Java 8 ? Et concernant ta version locale (dans /home/user/java), elle a été installé comment ?

Hors ligne

#12 Le 04/06/2021, à 18:19

Seth-be

Re : Mise à jour / changement de version de Java

Oui, quel bordel !!!

  Sélection   Chemin                                          Priorité  État
------------------------------------------------------------
  0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode automatique
  1            /home/user/java/jre1.8.0_291/bin/java            1         mode manuel
* 2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      mode manuel
  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      mode manuel
  4            /usr/lib/jvm/java-8-oracle/jre/bin/java          1081      mode manuel

update-alternatives: avertissement: forçage de la réinstallation de l'alternative /usr/lib/jvm/java-11-openjdk-amd64/bin/java car le groupe de liens java est cassé
update-alternatives: avertissement: /home/user/java ne sera pas remplacé par un lien
user@user-X411UA:~$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Pas de changement pour which java

J'ai besoin de la dernière version de Java 8. C'est la configuration requise pour utiliser ceci : https://www.ehealth.fgov.be/fr/esante/p … ts-ehealth
Ma version locale vient de ceci : https://www.java.com/fr/download/help/l … stall.html

... Merci pour l'aide !

Hors ligne

#13 Le 04/06/2021, à 18:29

abelthorne

Re : Mise à jour / changement de version de Java

Je comprends pas pourquoi les changements avec update-alternatives ne s'appliquent pas. Je suppose que la commande /usr/lib/jvm/java-8-oracle/jre/bin/java --version renvoie "1.8.0_181", ce qui serait cohérent avec le retour de la commande which ?

Pour ce qui est de l'appli dont tu as besoin, on peut supposer que ses prérequis datent de plusieurs années et qu'elle est censée fonctionner aussi avec des versions plus récentes. Cela dit, dans tous les cas, tu as Java 8 installé et utilisé : quel est le problème avec l'appli exactement ? Elle te dit que ton Java est trop vieux ? une autre erreur ?

EDIT : peut-être une piste là : https://stackoverflow.com/questions/629 … ge-nothing
Que donne le retour de cette commande ?

type -p java

Dernière modification par abelthorne (Le 04/06/2021, à 18:43)

Hors ligne

#14 Le 04/06/2021, à 19:24

ssdg

Re : Mise à jour / changement de version de Java

abelthorne a écrit :

e suppose que la commande /usr/lib/jvm/java-8-oracle/jre/bin/java --version renvoie "1.8.0_181", ce qui serait cohérent avec le retour de la commande which ?

Si c'est une version "standard" de java, je crois que ça ne marche pas parceque la "vraie" option est "-version" (au lieu de -- ) . C'est moche et c'est java qui ne respecte pas la convention.

Chez moi l'OS trouve java comme ceci:

$ which java; ls -l /usr/bin/java ; ls -l /etc/alternatives/java
/usr/bin/java
lrwxrwxrwx 1 root root 22 mars  24  2018 /usr/bin/java -> /etc/alternatives/java
lrwxrwxrwx 1 root root 43 mai   18 17:38 /etc/alternatives/java -> /usr/lib/jvm/java-16-openjdk-amd64/bin/java

Seth-be, je me demande pourquoi le tiens ne trouve java que dans les dernières valeurs de $PATH ...
Si mon installation (ma référence) est correcte, tu devrais, toi aussi avoir un lien /usr/bin/java qui pointe (indirectement) vers le vrai exécutable.


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#15 Le 04/06/2021, à 20:32

Seth-be

Re : Mise à jour / changement de version de Java

abelthorne a écrit :

Je comprends pas pourquoi les changements avec update-alternatives ne s'appliquent pas. Je suppose que la commande /usr/lib/jvm/java-8-oracle/jre/bin/java --version renvoie "1.8.0_181", ce qui serait cohérent avec le retour de la commande which ?

Pour ce qui est de l'appli dont tu as besoin, on peut supposer que ses prérequis datent de plusieurs années et qu'elle est censée fonctionner aussi avec des versions plus récentes. Cela dit, dans tous les cas, tu as Java 8 installé et utilisé : quel est le problème avec l'appli exactement ? Elle te dit que ton Java est trop vieux ? une autre erreur ?

EDIT : peut-être une piste là : https://stackoverflow.com/questions/629 … ge-nothing
Que donne le retour de cette commande ?

type -p java

Voici le message d'erreur que je reçois sur IcedTea : "-javax.xml.datatype.DatatypeConfigurationException: Provider for class javax.xml.datatype.DatatypeFactory cannot be found" Suite à quoi le help desk de l'administration m'a demandé de mettre à jour ma version de Java...

type -p java donne /usr/lib/jvm/java-8-oracle/bin/java

Hors ligne

#16 Le 04/06/2021, à 21:27

abelthorne

Re : Mise à jour / changement de version de Java

La dernière commande devrait effectivement donner /usr/bin/java qui serait un lien symbolique pour les alternatives.

Concernant IcedTea, c'est le plugin Java pour les navigateurs. Je ne sais pas du tout comment il est géré à l'heure actuelle, les paquets en rapport ont pas mal changé ces dernières années.

À tout hasard, si tu passes par Firefox, est-ce que ça donne la même chose avec Chromium (ou inversement) ?

Pour essayer de résoudre le problème de la version utilisée (du moins pour Java lui-même, peut-être pas pour IcedTea), il faudrait peut-être désinstaller OpenJDK 8, le Java 8 d'Oracle et ta version locale, réinstaller OpenJDK 11 puis éventuellement réinstaller le Java d'Oracle (en version 8 ou supérieure). Mais là, on navigue à vue...

Hors ligne

#17 Le 04/06/2021, à 22:36

Seth-be

Re : Mise à jour / changement de version de Java

Merci beaucoup pour les essais jusqu'ici !
Je galère pour l'extension pour le lecteur de carte d'identité Belgium eid sur Chromium... Grrr... !
Je verrai lundi si au help desk ils trouvent une piste.

Hors ligne

#18 Le 04/06/2021, à 22:48

Seth-be

Re : Mise à jour / changement de version de Java

Je pense avoir réglé mon problème d'accès en lançant javaws plutôt que idedtea...
Mais je reste avec une belle soupe de versions de Java sur mon PC ! ;-)

Hors ligne

#19 Le 13/06/2021, à 10:08

ssdg

Re : Mise à jour / changement de version de Java

Le javaws de ton installation dans le $HOME?

Et si tu trouve que le contenu de la discussion règle ton problème, tu peux éditer ton message tout en haut pour changer le titre en ajoutant "[résolu]" (sans guillemets) comme ça, quelqu'un qui cherche une réponse à un problème similaire commencera par ici.


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne