Echec installation java

Résolu/Fermé
Dropshift - 20 juil. 2015 à 08:47
mamiemando Messages postés 33072 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 avril 2024 - 20 juil. 2015 à 19:12
Bonjour,
Je viens vous voir aujourd'hui car je n'arrive pas à installer java sur mon vps débian 8.

La commande que j'utilise :

sudo apt-get install openjdk-7-jdk


Message d'erreur :

root@vpsxxxx:~# sudo apt-get install openjdk-7-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
openjdk-7-jdk : Depends: openjdk-7-jre (= 7u79-2.5.5-1~deb8u1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.


Avec mes faibles connaissances en anglais, je comprends que "openjdk-7-jdk" à besoin de "openjdk-7-jre" pour être installé.
J'essaye donc d'installer ce dernier mais il a lui aussi besoin d'un autre. Je peux résumé cette suite comme ceci:
--> = à besoin de
openjdk-7-jdk --> openjdk-7-jre --> openjdk-7-jre-headless --> tzdata-java --> tzdata

Sauf que pour le dernier ( tzdata ) j'obtiens ceci :

root@vpsxxxxx:~# sudo apt-get install tzdata
Reading package lists... Done
Building dependency tree
Reading state information... Done
tzdata is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.


Je suppose donc que celui ci est déjà installé. Alors pourquoi je n'arrive pas à installé cette série ?

Merci d'avoir prit la peine de lire.
Merci d'avance pour votre aide.
A voir également:

1 réponse

mamiemando Messages postés 33072 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 avril 2024 7 747
Modifié par mamiemando le 20/07/2015 à 10:20
Avec mes faibles connaissances en anglais, je comprends que "openjdk-7-jdk" à besoin de "openjdk-7-jre" pour être installé.

Oui

openjdk-7-jdk --> openjdk-7-jre --> openjdk-7-jre-headless --> tzdata-java --> tzdata

Oui tu as compris le principe, les paquets ont des dépendances en cascade et l'une d'elle bloque.

Sauf que pour le dernier ( tzdata ) j'obtiens ceci :

C'est qu'elle est déjà installée, en vrai c'est une dépendance précédente qui bloque. C'est parce qu'à ce stade tu n'as pas perçu un point important : il faut non seulement que les dépendances soient installées, mais en plus dans la bonne version. Pour en avoir le coeur net tu peux par exemple lancer :

aptitude show openjdk-7-jre-headless


La cause probable de ton problème est un paquet gelé (held) dans une version trop ancienne. Une manière simple pour résoudre ton problème consiste à le dégeler. De manière générale il n'est jamais bon de geler un paquet. Ce peut être nécessaire car une version récente de paquet est manifestement buggué mais c'est tout. Il peut arriver qu'apt décide de geler un paquet pour satisfaire certaines dépendances, mais généralement ce n'est pas un bon choix de sa part et il est toujours possible de trouver une manière de faire sans en geler.

Ce que je te conseille pour résoudre ce genre de problème et éviter qu'il ne se reproduise, c'est te familiariser avec aptitude en mode interactif.
https://www.mistra.fr/tutoriels-linux-outils-debian/tutoriel-linux-apt-migration.html

L'un des intérêts de cette interface est aussi qu'elle permet de "zoomer" sur un paquet (entrée) et de vérifier ses dépendances (en rouge : non satisfaite) et de comprendre ce qui bloque. On peut même zoomer sur cette dépendance (entrée) ou l'installer (
+
).

Voici ce que je ferais :
1) mise à jour :
uU

2) si conflit :
!

3) résoudre les paquets gelés :
g
puis en se plaçant sur la section "paquets maintenus" (+)
4) vérifier que tout ce qui peut être mis à jour va l'être :
U

5) si c'est bon (= pas de paquets cassés ou gelé) :
g

6) quitter :
q


Bonne chance
1
Je ne suis bon en linux et j'ai pas compris grand chose. tzdata est à ca dernière version mais je sais pas si il est gelé ou pas
0
j'ai réussis grâce à cette suite de commande :

sudo dpkg --force all --purge <paquet à supprimer>
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove
sudo apt-get update
sudo apt-get upgrade

sudo apt-get install openjdk-7-jdk

sudo apt-get -f install

Merci pour ton aide !
0
mamiemando Messages postés 33072 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 avril 2024 7 747
Modifié par mamiemando le 20/07/2015 à 19:13
Je t'en prie, l'important c'est que tu aies résolu ton problème.

Ce que tu as fait a probablement "dégelé" le paquet qui était source de blocage dans ton cas.

Je t'invite à essayer la méthode que je t'ai suggérée si tu venais à rencontrer à nouveau ce problème, car parfois ce que tu proposes ne sera pas faisable (en particulier si cela consiste à purger des paquets essentiels).

Bonne chance
0