Le programme de mise à jour Java sur mon Mac a installé une version obscure de Java 10.0.1 que je navais jamais entendue auparavant. Le résultat est que TOUTES mes applications java ne fonctionnent plus, ce qui rend Java inutile.
Les instructions officielles pour supprimer Java sont:
- sudo rm -fr / Library / Internet \ Plug-Ins / JavaAppletPlugin.plugin
Ce qui est inutile car Je nutilise pas Java sur le navigateur (qui est assez fou pour le faire?)
- sudo rm -fr / Library / PreferencePanes / JavaControlPanel.prefPane
Ce qui est inutile car supprime simplement le volet des préférences
- sudo rm -fr ~ / Library / Application \ Support / Java
Ce qui est inutile car ce répertoire est déjà vide
Les instructions officielles pour supprimer Java sur un Mac ne font absolument rien.
Si jexécute mes applications Java avec java -jar depuis le terminal, ils fonctionnent. Depuis le terminal, je vois ceci:
Donc, à partir du terminal, la version Java est 1.8.0_131, qui est ma version souhaitée. Depuis le bureau, lorsque je lance des applications avec JavaAppLauncher, la version Java est 10.0.1.
Comment puis-je inverser ce désastre quOracle a fait avec leur programme de mise à jour automatique?
Réponse
Jai eu ce même problème: javais Java 8 installé, mais plus tard installé 10. Ensuite, jai supprimé 10, et quand jai lancé un jar de le terminal il fonctionnerait en version 8, et quand je vérifiais la version avec java -version
dans le terminal, je récupérerais java version "1.8.0_181
. Cependant, lorsque jexécutais un .jar à partir du Finder , il fonctionnerait dans la v.10, et aussi si jallais dans le volet des préférences Java, la version était répertoriée comme la version 10. Ce nétait pas souhaitable: jétais essayer de supprimer complètement la v10.
Ensuite, jai supprimé JavaAppletPlugin avec rm /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
et réinstallé Java SE JDK 8 en ligne, et voilà! ça fonctionne maintenant. Lorsque jexécute .jar, ils fonctionnent en Java 8.
Je réalise que vous lavez mentionné dans votre première étape, mais jen déduis que vous navez pas fait cette étape? Si je me trompe, alors vous « Jai un problème différent. Mais cela a résolu le mien.
Commentaires
- oui je nai pas essayé de supprimer le plugin de lapplet car de toute façon je lai désactivé dans le navigateur
- Cela a tout son sens. Mais, daprès mon expérience, il semble que la présence de JavaAppletPlugin affecte la version de Java utilisée pour exécuter les applications .jar à partir du Finder. Pour moi, jai supprimé la JVM v10, mais ce nest que lorsque jai supprimé JavaAppletPlugin que le chercheur a cessé dutiliser la v10 pour exécuter des applications .jar.
Réponse
Je pense que le problème est de naviguer vers le bon répertoire … Une fois que vous êtes là où vous êtes censé être, vous pouvez exécuter les commandes sudo pour supprimer les versions de java que vous souhaitez supprimer.
Dabord , exécutez la commande dans le terminal pour déterminer quelle version de Java vous utilisez En cours dexécution,
java -version
alors vous pouvez accéder à la version embêtante de java que vous avez lintention de supprimer en utilisant la commande suivante:
cd /Library/Java/JavaVirtualMachines
puis une fois que vous voyez que vous êtes dans le chemin JavaVirtualMachines
, tapez ls
pour voir quelles versions de Java que vous avez installé,
ls
et enfin lorsque vous savez quelle ou quelles versions de Java vous souhaitez désinstaller:
sudo rm -rf jdk-10.0.1.jdk #or whichever version you want to delete
Commentaires
- Le problème est que la version affichée par le panneau de contrôle ne correspond pas à la version java du terminal. Si je veux supprimer java 8.171 semble quil ny a aucun moyen également: imgur.com/a/iIK67bD
- Et le jdk 10.0. 1 nétait pas présent dans ce dossier
- @Magnetic_dud vous devriez toujours être en mesure de déboguer en utilisant la structure de votre répertoire de fichiers à laide de la commande ls, puis de supprimer et de réinstaller un nouveau Jdk fonctionnel ou la version Java que vous installez.
- Simple et a fonctionné pour moi. Merci!
Réponse
Si vous possédez plusieurs versions de jdk:
$ ls -l /Library/Java/JavaVirtualMachines drwxr-xr-x 3 root wheel 96 30 avr 15:15 jdk-10.0.1.jdk drwxr-xr-x 3 root wheel 96 30 avr 15:24 jdk1.8.0_172.jdk drwxr-xr-x 3 root wheel 96 17 oct 10:59 jdk1.8.0_191.jdk
changez votre JAVA_HOME
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
Réponse
Jai téléchargé lancienne version (de travail) sur java.com
En fait, Java 8.171 est le téléchargement affiché par défaut. Je ne sais pas pourquoi il a été automatiquement mis à jour vers la version 10.0.1 quand il est de qualité bêta.
Maintenant, il ne sera pas installé, il dit « Désolé, vous avez le plus récent et meilleur Java 10.0.1 »
Pour installer, exécutez les commandes apparemment inutiles mentionnées dans la question. Java fonctionnera toujours dans le terminal, mais alors le programme dinstallation vous permettra dinstaller la bonne version, 1.8_171
Désactivez maintenant les mises à jour, si vous ne souhaitez plus interrompre vos applications. Java est une menace pour la sécurité, il doit être mis à jour tous les mois, alors assurez-vous quil est désactivé dans votre navigateur.
Pour une raison quelconque, si vous exécutez java -version, vous obtenez toujours:
java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Quelle est une autre mauvaise version. Quoi quil en soit, limportant est que maintenant vos applications Java fonctionnent, assurez-vous que le plugin du navigateur est désactivé pour votre sécurité.
Réponse
Dans mon cas, je avait deux JDK installés sur mon ordinateur v11 et v7. Javais besoin dexécuter Eclipse Luna sur mon ordinateur pour un projet. Chaque fois que jexécute dans cmd java -version
, jai java version 11.0.....
etc. «
La solution pour moi était de changer la variable PATH
; pour pointer vers le JDK avec lequel javais besoin dEclipse.
Donc, fondamentalement, je passe de:
C:\Program Files\Java\jdk-11.0.2\bin
à
C:\Java\JDK7\bin
Maintenant, le résultat de lexécution de la version java est:
java version "1.7.0_76"
Commentaires
- Japprécie votre réponse, mais cela semble être une réponse destinée à Windows sur un article sur macOS.