Java 8 JDK vom Mac entfernen

247

Deshalb habe ich vor einiger Zeit die Beta von JDK 8 installiert, um mir einige Beispiele anzusehen. Ich war mir sicher, dass es einfach ist, zwischen den Versionen zu wechseln.

Mit IntelliJ etwas Spielentwicklung machen. Aus irgendeinem Grund kompiliert IntelliJ mit 8, obwohl:

  • Ich habe den Compiler in den Einstellungen so eingestellt, dass er 1.6 verwendet
  • Angeblich wird SBT über einen externen Build verwendet, aber sbt über die Befehlszeile funktioniert
  • JAVA_HOME zeigt auf JDK 6.

Wenn ich zur Seite "Java-Einstellungen" gehe, wird 8 installiert angezeigt, es gibt jedoch keine Option zum Deinstallieren und es wird keine der anderen Versionen angezeigt.

Wenn ich es tue which java, sagt es mir /usr/bin/javaund ich /usr/bin/java -versionund es gibt 1.6 zurück.

Hinweis: Mit ein wenig Fummelei können Sie IntelliJ und JDK7 verwenden, siehe hier .

rauben
quelle
1
Warum möchten Sie JDK 6 verwenden? Es wurde EOL'd, siehe oracle.com/technetwork/java/eol-135779.html . Wenn Sie keine Beta-Version (JDK 8) möchten, sollten Sie zu JDK 7
wechseln
1
JDK7 auf dem Mac ist immer noch ein Chaos. Habe viele Probleme damit gehabt. Aber ich würde an dieser Stelle 7 nehmen. (Falls Sie es nicht wussten, JetBrains sagt immer noch, dass sie es auf dem Mac nicht unterstützen ..!)
Rob
3
Erwägen Sie auch, jdk als Homebrew-Fass zu installieren. Die (Un-) Installation / Aktualisierung ist dann ein einfacher Befehl zum Brauen.
Agoston Horvath
2
Die Verwendung von Homebrew& Jenvzum Verwalten der installierten JavaVersion scheint der richtige Weg zu sein. siehe hanxue-it.blogspot.ch/2014/05/…
Adrien Be
1
Ich fand es nützlich, auf Homebrew-Cask-Java-Formeln zu verweisen, wie sie jdk deinstallieren. jdk9 & jdk8 .
Bruce Sun

Antworten:

658

Ich konnte jdk 8 in Mavericks erfolgreich deinstallieren, indem ich die folgenden Schritte erfolgreich ausführte:

Führen Sie diesen Befehl aus, um nur das JDK zu entfernen

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk<version>.jdk

Führen Sie diese Befehle aus, wenn Sie Plugins entfernen möchten

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/PrivilegedHelperTools/com.oracle.java.JavaUpdateHelper
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist
Samuel Alpoim
quelle
2
Das einzige Problem ist, dass ich jetzt jdk7 nicht installieren kann. Ich führe das Installationsprogramm aus, aber in der Befehlszeile wird immer noch "Keine Java-Laufzeit vorhanden, Installation anfordern" angezeigt. Es lügt jedoch, weil die Installation nicht angefordert wird.
Geoidesic
4
Dies ist sehr schlecht, da Sie auch den Einstellungsbereich in den Systemeinstellungen löschen. Führen Sie einfach den ersten Befehl aus und lassen Sie die anderen aus.
Aquarelle
1
Nach diesen Schritten nimmt MAC automatisch alternatives Java als Standard, wenn es bereits installiert ist.
Ashokchakravarthi Nagarajan
6
Um ganz klar zu sein, müssen Sie alle Java-Inhalte deinstallieren. Wenn Sie aus irgendeinem Grund eine andere Java-Version behalten möchten, entfernen Sie nur das JDK selbst (erster Befehl).
Mikl
1
Du hast mich vor großen Kopfschmerzen
bewahrt. Gott
85

Sie müssen nur diese Befehle verwenden

sudo rm -rf /Library/Java/*
sudo rm -rf /Library/PreferencePanes/Java*
sudo rm -rf /Library/Internet\ Plug-Ins/Java*
Jonny TS
quelle
2
Dieser hat für mich unter OSX El Capitan
funktioniert
10
Auf diese Weise entfernen Sie ALLE Java-JDKs, nicht nur 8. Vorsicht.
Andres
Wie kann ich es nach solchen Vorgängen wieder installieren?
Ruslan Leshchenko
14

Das Verwalten von Java-Versionen unter Mac OS X ist ein Albtraum. Ich bin kürzlich auf JDK 1.7 umgestiegen und habe JDK 6 vollständig von meinem MacBook gelöscht (ich hatte auch Spuren von JDK 5 - dieser Laptop wurde einige Male aktualisiert).

Folgendes habe ich getan, um zu JDK 7 zu wechseln.

1) Laden Sie die neueste Version von Oracle herunter ( http://www.oracle.com/technetwork/java/javase/downloads/index.html ) und installieren Sie sie.

2) Entfernen Sie alle JDK6- und JRE6-Dateien (mit rm - wenn Sie Backups haben, können Sie sie zurücksetzen, wenn Sie einen Fehler machen).

In diesem Stadium sollten Sie sehen:

% ls /Library/Java/JavaVirtualMachines/
jdk1.7.0_nn.jdk

(und sonst nichts)

3) Im Ordner / Library / Java / Extensions / müssen Sie alle alten JAR-Dateien entfernen, die anderen Java-Versionen entsprechen. Wenn Sie dies nicht tun, erhalten Sie die berüchtigte Meldung über die falsche Version von tools.jar (siehe Builds schlagen nach dem Upgrade auf Java7 fehl, fehlende Tools.jar und fehlerhafte Klassenversionen ). Es reicht nicht aus, die JAR-Dateien umzubenennen, da Java jedes JAR in diesem Ordner öffnet - ich habe meine in ein Unterverzeichnis verschoben. Sie können sie sicher entfernen, sobald Sie wissen, dass alles andere funktioniert.

Ich habe nicht festgestellt, dass ich JAVA_HOME für einfache Dinge einstellen muss.

Hinweis : Ich habe gerade versucht, IntelliJ auszuführen, und es wird erst gestartet, wenn Sie Apples JDK 6 installiert haben (siehe http://youtrack.jetbrains.com/issue/IDEA-93710 ). Gleiches gilt für Eclipse. Netbeans funktioniert gut.

kmorris
quelle
1
Die ursprüngliche Frage wurde bearbeitet, um einen Link zu einer anderen SO-Frage zu enthalten, wie IntelliJ JDK7 (auf einem Mac) verwenden kann.
Rob
3
Das Verwalten der Java-Version auf einem Mac ist ein ABSOLUTER NIGHTMARE. Ich konnte Oracle Java 8 installieren und verschiedene Java-Versionen unter Ubuntu in weniger als 5 Minuten verwalten. Ich habe jetzt mehrere Stunden damit verbracht, Oracle Java 8 unter OSX zum Laufen zu bringen.
John Merlino
11

Verwenden Sie /usr/libexec/java_home; Ich fand diesen Alias ​​und diese Funktion ziemlich nützlich in meinem ~/.profile:

alias java_ls='/usr/libexec/java_home -V 2>&1 | cut -s -d , -f 1 | cut -c 5-'
function java_use() {
    export JAVA_HOME=$(/usr/libexec/java_home -v $1)
    java -version
}
Grégory Joseph
quelle
Ich denke, dies funktioniert nur für Ihre Shell-Umgebung, nicht für die Umgebung, die eine App (wie Intellij) erhält, wenn Sie auf das entsprechende Symbol doppelklicken.
NBW
@NBW AFAIK Java-Apps unter OSX haben eine eigene Java-Version in ihrer Info.plist-Datei (oder etwas in dieser Richtung, z. B. welchen Versionsbereich sie unterstützen oder so). Die Änderung an JAVA_HOME gilt nur für die aktuelle Terminalsitzung, aber ich denke, / usr / libexec / java_home kann sich auf andere Sitzungen / Umgebungen auswirken. (Ich kann es nicht leicht überprüfen, weil ich java_use 1.7 in meinem ~ / .profile erzwinge)
Grégory Joseph
Und wenn Sie auch sehen möchten, ob das JDK 32-Bit oder 64-Bit ist, reicht etwas in der Art von alias java_ls='/usr/libexec/java_home -V 2>&1 | sed "/^ \(.*\) \(.*\),/!d;/^\s*$/d;s/^ \(.*\) \(.*\), \(.*\):\(.*\)$/\2 (\3)/g"'Willen aus.
Moreaki
10

Ich habe alles Java, JDK und Orakel zerstört. Ich habe Java 8 unter OSX El Capitan ausgeführt

Anderen Antworten fehlten Tonnen von Sachen. Diese Antwort deckt viel mehr Grundlagen ab.

Auf Wiedersehen, Schaufelware.

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist
sudo rm -rf /System/Library/Frameworks/JavaVM.framework
sudo rm -rf /usr/bin/java
sudo rm -rf /usr/bin/javac
sudo rm -rf /usr/bin/javadoc
sudo rm -rf /usr/bin/javah
sudo rm -rf /usr/bin/javap
sudo rm -rf /usr/bin/javaws
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.bom
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.plist
sudo rm -rf /var/db/receipts/com.oracle.jre.bom
sudo rm -rf /var/db/receipts/com.oracle.jre.plist
sudo rm -rf /var/root/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/Library/Preferences/com.oracle.java.JavaAppletPlugin.plist
sudo rm -rf ~/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/.oracle_jre_usage
Danke dir
quelle
2
Keine Berechtigungen zum Entfernen dieser Datei "/System/Library/Frameworks/JavaVM.framework"
Nazariy
2
@ Nazariy einige von diesen benötigen möglicherweise nicht, sudoaber ich habe es trotzdem verwendet. Lange Rede, kurzer Sinn: Installieren Sie Java nie wieder.
Vielen Dank, dass Sie
1
@ Nazi System Integrity Protection
Cameron Lowell Palmer
1
AFAIK Es ist das von Apple standardmäßig installierte JDK. Sie müssen dies nicht löschen.
Kutsan Kaplan
1
Bitte überprüfen Sie Ihre Dateiliste. Dateien in / usr / bin sind Teil des Basissystems. Siehe docs.oracle.com/javase/8/docs/technotes/guides/install/…
Andres
7

Hier ist das offizielle Dokument zur Deinstallation des JDK.

http://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html#A1096903

Lonre Wang
quelle
Hab das einfach nochmal gemacht, das hat nicht funktioniert. Endete mit "Sie haben eine neuere Version (und deren toten Link)."
Rob
3
Diese Links sagten: cd '/Library/Java/JavaVirtualMachines/'dann sudo rm -rf YOURVERSION.jdk, dhrm -rf jdk1.8.0_06.jdk
Alan Dong
4

Wenn Sie jdk8 auf Ihrem Mac installiert haben, es aber jetzt entfernen möchten, führen Sie einfach den folgenden Befehl aus: "sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk"

Danny Shi
quelle
Nach dem Löschen des JDK-Ordners wird weiterhin ein Eintrag für Java in Launchpad -> Systemeinstellungen
Drew
Das hat auch bei mir funktioniert ... Vielen Dank, hat geholfen, den Fehler "Fixing Unsupported major.minor Version 52.0" auch in Android Studio zu beheben.
Pradeep Chakravarti Gudipati
@ Nach meinen Erkenntnissen hat Java in Präferenzen nichts mit dem JDK zu tun (Einstellungen laden Webseiten auf Ihren Computer, JDK befasst sich beispielsweise mit dem Kompilieren anderer Programme mit Java) ist eigentlich kein Problem
DaveRGP
3

Wenn Sie alle Dateien deinstallieren, diese aber dennoch fehlschlagen, verwenden Sie diese Zeile:

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk
Chris Mukherjee
quelle
2
Dies fügt nichts hinzu. Die akzeptierte Antwort sagte dies und mehr bereits
Chris Mukherjee
3

Um Java einer beliebigen Version auf einem Mac zu deinstallieren, gehen Sie einfach wie folgt vor:

sudo rm -fr /Library/Java/JavaVirtualMachines/jdk-YOUR_ACCURATE_VERSION.jdk/ 
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin 
sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
Karthik Damodara
quelle
1

Das können Sie auf zwei Arten tun:

  1. JDK direkt aus Benutzer-> Bibliothek -> Java -> VirtualMachines entfernen -> dann den JDK-Ordner direkt löschen, um Java zu deinstallieren.

  2. Folgen Sie dem Befehl: (Java 1.8-Version deinstallieren)

Stellen Sie sicher, dass Sie sich im Ausgangsverzeichnis befinden, indem Sie den folgenden Befehl verwenden, bevor Sie den Befehl schreiben:

cd ~/

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.jdk
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/Application\ Support/Oracle/Java
Steve
quelle
1

in Mac Entfernen Sie die Java-Version mit diesen 3 Befehlen

Java-Version

sudo rm -rf / Library / Java / *

sudo rm -rf / Library / PreferencePanes / Java *

sudo rm -rf / Bibliothek / Internet \ Plug-Ins / Java *

Lauf

Java-Version

// Siehe Java wurde erfolgreich deinstalliert.

Java-Version sudo rm -rf / Bibliothek / Java / * sudo rm -rf / Bibliothek / PreferencePanes / Java * sudo rm -rf / Bibliothek / Internet \ Plug-Ins / Java *

Führen Sie die Java-Version aus

Installieren Sie Java 8 Link

Geben Sie hier die Bildbeschreibung ein

Laden Sie das Paket herunter und klicken Sie auf Weiter Weiter Weiter

Keshav Gera
quelle
JDK 102 MB .PKG installiert
Keshav Gera
-12

Das hat bei mir perfekt funktioniert:

sudo rm -rf /Library/Java/JavaVirtualMachines
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
Neal Rauhauser
quelle