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 .


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

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*

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.


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
}

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

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


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"


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

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

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

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


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.