web-dev-qa-db-fra.com

Comment terminer l'installation de JDK Sun après l'annulation de l'écran des termes légaux?

Je suis un nouvel arrivant sur Linux et j'ai eu beaucoup de problèmes pour installer Java sur mon Ubuntu 11.10 nouvellement installé. J'utilise un environnement de programmation statistique appelé R et la plupart des paquets qui y sont installés nécessitent Java (la variété Sun, me dit-on). J'ai essayé ce qui suit:

Sudo add-apt-repository ppa:ferramroberto/Java
Sudo apt-get update
Sudo apt-get install Sun-Java6-jre Sun-Java6-plugin Sun-Java6-fonts

(après cela, je voulais continuer avec (mais je n’en suis jamais arrivé là):

Sudo apt-get install Sun-Java6-jdk

Après cela, une fenêtre est apparue avec l’en-tête "Configuration de jre" ou quelque chose comme ça. Vous trouverez ci-dessous une longue liste de textes juridiques sur l’acceptation des conditions de Sun. Je ne savais pas comment fermer cette fenêtre (aucune option évidente, comme appuyer sur le bouton retour, fonctionnait). Après un long moment, quand rien ne semblait se passer, j'ai finalement fermé la fenêtre. Après cela, je ne pouvais plus ouvrir synaptique.

J'ai eu le message d'erreur:

dpkg a été interrompu. Vous devez exécuter manuellement 'Sudo dpkg --configure -a'

J'ai fait ça. Mais ça n'aide pas. J'ai Java en tant que programme "défectueux". Lorsque j'essaie de supprimer le programme de Synaptic, je reçois un message indiquant que je dois le réinstaller à nouveau.Je ne sais pas ce que je devrais faire.

Je veux installer jdk6. Et aussi supprimer le jdk ouvert qui est toujours présent dans mon système.

J'ai essayé la commande nettoyer et purger illustrée ci-dessous. Ensuite, j'ai essayé de supprimer le Sun-Java6-jre de Synaptic. Je reçois le message suivant: E: Sun-Java6-jre: Le paquet est dans un très mauvais état incohérent - vous devez le réinstaller avant toute tentative de suppression. Lorsque j'ai essayé de suivre la procédure suggérée dans la question connexe (à partir du lien suggéré ci-dessous), le message suivant s'affiche lorsque je tentais de réinstaller l'installation: Impossible de marquer tous les packages pour l'installation ou la mise à niveau. Les packages suivants ont des dépendances insolubles. Assurez-vous que tous les référentiels requis sont ajoutés et activés dans les préférences. Sun-Java6-bin: Dépend de: Sun-Java6-jre mais il ne va pas être installé.


Eliah, Merci pour votre réponse. J'aime votre position de principe et votre défense énergique du lien que vous avez fourni. J'y reviendrai plus tard (et sur les multiples options et opinions sur l'installation de jdk7). Je devrais peut-être aussi prendre la question de open jdk vs Oracle jdk dans les forums R. Mais je dois d’abord résoudre le problème de la suppression du programme jre endommagé de mon installation, qui n’a toujours pas été résolu. Je montre ici les résultats de la commande que vous avez suggérée:

ravi@raviM1330:~$ Sudo apt-get purge Sun-Java6-jre Sun-Java6-plugin Sun-Java6-fonts
[Sudo] password for ravi: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package Sun-Java6-fonts is not installed, so not removed
Package Sun-Java6-plugin is not installed, so not removed
The following package was automatically installed and is no longer required:
  Java-wrappers
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  Sun-Java6-jre*
0 upgraded, 0 newly installed, 1 to remove and 26 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
dpkg: error processing Sun-Java6-jre (--purge):
 Package is in a very bad inconsistent state - you should
 reinstall it before attempting a removal.
Errors were encountered while processing:
 Sun-Java6-jre
E: Sub-process /usr/bin/dpkg returned an error code (1)
ravi@raviM1330:~$ 

Je suis maintenant heureux de signaler que mon problème d'installation de Sun jdk6 est maintenant résolu. En fait, je n'ai pas fait grand chose moi-même. Je viens de lancer le gestionnaire de mise à jour et cela résout le problème de l'installation défectueuse. Les nouveaux programmes ont été chargés. À mi-parcours de cette mise à jour, la fenêtre contenant l'écran des termes légaux réapparut. Cette fois, je pouvais cocher l'une des cases pour indiquer que j'acceptais les conditions (il n'y en avait pas auparavant, ou du moins, je ne l'ai pas localisée). Après cela, je suis retourné à Synaptic, j'ai choisi les éléments restants du PPA associé à Sun jdk6 et les ai installés.

Les seules étapes restantes consistaient à supprimer le jdk ouvert (à partir du centre de logiciel ubuntu), puis à configurer Java comme requis par R (l'environnement de programmation statistique pour lequel j'avais besoin de Java). Je l'ai fait en exécutant la commande: R CMD javareconf. Ceci configure la configuration Java dans/etc/R.

5
Ravi

Essaye ça:

Sudo apt-get clean && Sudo apt-get purge

Cela devrait fonctionner si vos paquets sont cassés. Après cette réinstallation.

0
bioShark

Tout d’abord, vous devez savoir que le PPA ferramroberto/Java ne contient plus les dernières versions d’Oracle Java 6 (et ne le fera probablement jamais, car Oracle a modifié les termes de la licence afin que les versions les plus récentes ne soient pas nécessairement distribué de cette façon). De plus, Oracle Java 7 est sorti. Donc, si vous voulez utiliser la version propriétaire de Java (même si OpenJDK est un logiciel gratuit à source ouverte, fonctionne aussi bien la plupart du temps et est disponible via des sources officielles de logiciels Ubuntu activées automatiquement), Il est préférable de l’obtenir auprès de site Web Oracle . (Voir l'article n ° 13 dans cette question , et les liens qui y figurent, pour plus de détails.)

Cela dit, le problème avec bioSharkréponse était que apt-get purge ne purge que les fichiers des paquets en cours de suppression, et les commandes données ne disaient pas réellement le gestionnaire de paquets pour supprimer tous les paquets. Cette commande devrait suffire (et vous n'avez pas besoin de faire apt-get clean pour supprimer les paquets .deb en cache, pas les fichiers de configuration):

Sudo apt-get purge Sun-Java6-jre Sun-Java6-plugin Sun-Java6-fonts

Ensuite, vous devriez pouvoir réinstaller Java et vous devriez être invité à lire et à signer un contrat de licence.

3
Eliah Kagan