update-alternatives: problème de «chemin alternatif n'existe pas» lors de la mise à jour de JDK7

10

J'ai décidé de mettre à jour mon JDK7 vers une version récente à partir d' ici .

L'archive x64 tag.gz correspondante pour mon architecture a été téléchargée et extraite /usr/lib/jvmcomme d'habitude. Toutes les versions précédentes de Java ont été installées auparavant de la même manière. Mais avant de définir de nouvelles alternatives pour java, javacet javawsj'ai supprimé toutes les alternatives existantes à l'aide des commandes suivantes:

sudo update-alternatives --remove-all java
sudo update-alternatives --remove-all javac
sudo update-alternatives --remove-all javaws

Maintenant, lorsque j'essaie d'installer de nouvelles alternatives, j'obtiens ce qui suit:

sudo update-alternatives --install /usr/lib/jvm/jdk1.7.0_13/bin/java java /usr/bin/java 1
update-alternatives: error: alternative path /usr/bin/java doesn't exist.

Bien sûr, /usr/bin/javan'existe pas mais existe /usr/bin? Quel est le problème et comment puis-je le réparer?

ezze
la source
1
Il existe un ppa java webupd8 pour la mise à jour d'Oracle JDK7.
BuZZ-dEE

Réponses:

8

C'est ma faute épique! :)

J'ai mélangé les arguments de update-alternatives. La bonne ligne de commande doit être:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk/bin/java 1
ezze
la source
Je l'ai posté comme réponse car cela a résolu la question. Je ne sais pas avec certitude si je dois supprimer la question (car elle a été résolue par moi-même en peu de temps) ou poster la réponse.
ezze
Publier la réponse est généralement la bonne chose. Bien que ce problème soit si localisé, je ne suis pas sûr que quiconque le trouvera utile à l'avenir. Qui sait, je peux me tromper. :)
Nathan JB
Quoi qu'il en soit, la prochaine fois que vous installerez / mettrez à niveau Java, je vous recommande fortement d'utiliser le webup8 java ppa (lien différent) - Cela rend TOUT tellement plus facile (assurez-vous simplement de purger votre installation actuelle en premier).
Nathan JB
2

Étant donné que vous effectuez une mise à jour à partir d'une version Java précédente, que vous avez supprimée manuellement, vous devrez exécuter la commande suivante deux fois. Vous obtenez un message d'erreur la première fois et cela fonctionne lorsque vous l'exécutez la deuxième fois.

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk/bin/java" 1

Source: Projet Easy Linux

Aditya
la source
Merci pour la réponse, mais le problème est que j'ai mélangé les arguments de update-alternatives. La bonne commande fonctionne avec la première tentative.
ezze