Actualizatorul Java de pe Mac-ul meu a instalat o versiune obscură de Java 10.0.1 pe care nu am mai auzit-o până acum. Rezultatul este că TOATE aplicațiile mele Java nu mai rulează, ceea ce face Java fără sens.
Instrucțiunile oficiale pentru a elimina Java sunt:
- sudo rm -fr / Library / Internet \ Plug-Ins / JavaAppletPlugin.plugin
Ceea ce este inutil pentru că Nu folosesc Java în browser (cine este suficient de nebun să o facă?)
- sudo rm -fr / Library / PreferencePanes / JavaControlPanel.prefPane
Ceea ce este inutil, deoarece elimină doar panoul de preferințe
- sudo rm -fr ~ / Library / Application \ Support / Java
Ce este inutil acest director este deja gol
Instrucțiunile oficiale pentru eliminarea Java pe un Mac nu fac absolut nimic.
Dacă îmi rulez aplicațiile Java cu java -jar de la terminal funcționează. De la terminal, văd acest lucru:
Deci, de la terminal, versiunea Java este 1.8.0_131, care este versiunea mea dorită. De pe desktop, când lansez aplicații cu JavaAppLauncher, versiunea Java este 10.0.1.
Cum pot reveni acest dezastru pe care l-a făcut Oracle cu actualizatorul automat?
Răspuns
Am avut aceeași problemă: am instalat Java 8, dar ulterior am instalat 10. Apoi, am eliminat 10 și când am lansat un jar din terminalul ar rula în versiunea 8, iar când am verificat versiunea cu java -version
în terminal aș primi înapoi java version "1.8.0_181
. Cu toate acestea, când am rulat un .jar din Finder , acesta va rula în v.10 și, de asemenea, dacă m-aș duce la panoul de preferințe Java, versiunea ar fi listată ca versiunea 10. Acest lucru nu era de dorit: am fost încercând să eliminați complet v10.
Apoi, am șters JavaAppletPlugin cu rm /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
și am reinstalat Java SE JDK 8 de pe internet și iată! funcționează acum. Când rulez .jar, rulează în Java 8.
Îmi dau seama că ai menționat acest lucru în primul tău pas, dar deduc că nu ai făcut acest pas? Dacă greșesc despre asta, atunci tu „Am o altă problemă. Dar aceasta a rezolvat problema mea.
Comentarii
- da, nu am încercat să șterg pluginul pentru applet deoarece oricum l-am dezactivat în browser
- Are un sens total. Dar, pe baza experienței mele, se pare că prezența JavaAppletPlugin afectează ce versiune de Java este utilizată pentru a rula aplicațiile .jar din Finder. Pentru mine, am șters JVM v10, dar numai când am șters JavaAppletPlugin, căutătorul a încetat să folosească v10 pentru rularea aplicațiilor .jar.
Răspuns
Cred că problema este navigarea către directorul corect … Odată ce sunteți acolo unde ar trebui să fiți, puteți rula comenzile sudo pentru a elimina oricare dintre versiunile de Java pe care doriți să le eliminați.
Mai întâi , executați comanda în terminal pentru a determina ce versiune de Java sunteți rulați,
java -version
apoi puteți naviga la versiunea greșită de java pe care intenționați să o ștergeți folosind următoarea comandă:
cd /Library/Java/JavaVirtualMachines
apoi, odată ce vedeți că se află în calea JavaVirtualMachines
, tastați ls
pentru a vedea ce versiuni de Java pe care l-ați instalat,
ls
și, în cele din urmă, când știți ce versiune sau versiuni de Java doriți să dezinstalați:
sudo rm -rf jdk-10.0.1.jdk #or whichever version you want to delete
Comentarii
- Problema este că versiunea afișată de panoul de control nu se potrivește cu versiunea java din terminal. Dacă vreau să elimin java 8.171 se pare că nu există nici o modalitate: imgur.com/a/iIK67bD
- Și jdk 10.0. 1 nu a fost prezent în acel folder
- @Magnetic_dud ar trebui să puteți depana în continuare folosind structura directorului de fișiere folosind comanda ls și apoi să ștergeți și să reinstalați un nou Jdk de lucru sau orice versiune java pe care o instalați ..
- Simplu și a funcționat pentru mine. Vă mulțumim!
Răspundeți
Dacă aveți mai multe versiuni 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
schimbă-ți JAVA_HOME
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
Răspunde
Am descărcat vechea versiune (funcțională) de pe java.com
De fapt, Java 8.171 este descărcarea afișată în mod implicit. Nu știu de ce a fost actualizată automat la 10.0.1 când este calitatea beta.
Acum, nu o va instala, scrie „Ne pare rău, aveți Java 10.0.1 mai nou și mai bun”
Pentru instalare, rulați comenzile aparent inutile menționate în întrebare. Java va funcționa în continuare în terminal, dar apoi programul de instalare vă va permite să instalați versiunea corectă, 1.8_171
Acum, dezactivați actualizările, dacă nu doriți să vă rupeți din nou aplicațiile. Java este o amenințare la adresa securității, ar trebui să fie actualizat lunar, deci asigurați-vă că este dezactivat în browserul dvs.
Din anumite motive, dacă executați java -version, veți primi:
java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Care este o altă versiune greșită. Oricum, important este că acum aplicațiile dvs. Java funcționează, asigurați-vă că pluginul browserului este dezactivat pentru securitatea dvs.
Răspundeți
În cazul meu I aveam două JDK instalate pe computerul meu v11 și v7. Trebuia să rulez Eclipse Luna pe computerul meu pentru un proiect. Ori de câte ori execut în cmd java -version
am primit java version 11.0.....
etc. „
Soluția pentru mine a fost schimbarea variabilei PATH
; să arăt spre JDK cu care aveam nevoie de Eclipse pentru a rula.
Deci, practic, trec de la:
C:\Program Files\Java\jdk-11.0.2\bin
la
C:\Java\JDK7\bin
Acum, ieșirea din executarea java -version este:
java version "1.7.0_76"
Comentarii
- Apreciez răspunsul dvs., dar acesta pare a fi un răspuns destinat pentru Windows într-o postare despre macOS.