Wie deinstalliere ich Java6 von Mac OS X

Mit dem Ende der öffentlichen Updates für Java 1.6 im Februar 2012 und der langen Liste der Sicherheitsupdates auf dem späteren 1.7 neige ich dazu, Java 1.6 und das JDK dauerhaft von meinem Mac zu entfernen, wenn ich nur wüsste, wie ich dies auf saubere Weise erreichen kann.

Oracle-Java-EOL-Ankündigung

 30
Author: bbaassssiiee, 2013-03-12

4 answers

In Mac OS X 10.7 ist das von Apple bereitgestellte JDK (Java 6) in /System/Library/Java/JavaVirtualMachines/ also lösche es einfach von dort

Das von Oracle bereitgestellte JDK (Java 7) ist in /Library/Java/JavaVirtualMachines /

 28
Author: Alexis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-04-26 08:39:41

Ich hatte die gleiche Frage, bis heute.

Aus Den macosx-port-dev Archiven und Wie kann Java 6 unter OSX ordnungsgemäß deinstalliert werden?:

Ich stimme der folgenden Einschätzung zu,

(Vorherige Meldung)

Ich kenne die Antwort auf Ihre Frage nicht, aber ich kann vorschlagen, dass Sie sich möglicherweise unnötige Probleme bereiten.

Sicherheitsupdates sind wichtig, weil Websites, die Java böswillig verwenden. Aber du kann Java 6 sowieso nicht im Web verwenden. Sie können Java 7 nur für Applets ausführen.

Java 6 ist auf Ihrem Computer für Legacy-Software, die in eigenständigen Anwendungen darauf angewiesen ist. Die Sicherheitsprobleme werden sich nicht auf diese Apps auswirken. Die Sicherheitsprobleme sind ausnahmslos Sandbox-Verletzung Tricks, und die Standalone-Apps laufen nicht Java Sandboxed sowieso.

Wenn Sie jedoch Ihre Maschine von Java SE 6 befreien möchten, das richtige Verfahren ist:

Entfernen Sie die "system" JVM installiert und gepflegt durch Software Update

% sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

Entfernen Sie alle Java-Entwickler-Vorschauen

% sudo rm -rf /Library/Java/JavaVirtualMachines/1.6.0*.jdk

Entfernen Sie KEINE Inhalte im JavaVM.Rahmen (Anm.: Unter /System/Library/Frameworks/JavaVM.framework )

Diese Elemente werden von Java 7, 8, 9+ sowie Java SE 6 benötigt. Keine moderne Version von OS X hat dort sowieso ein Java JDK.

 18
Author: BMourelo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-02-05 19:16:04

Gehen Sie zum Verzeichnis Macintosh HD/Library/Java/JavaVirtualMachines/ und entfernen Sie die Datei "1.6.0.jdk."

Quelle

Hier ist die offizielle Oracle-Dokumentation zum Deinstallieren von jdk von einem Mac

 6
Author: gmazlami,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-02-05 20:16:54

In Bezug auf die obige Antwort heißt es:

Entfernen Sie KEINE Inhalte im JavaVM.Rahmen (Anm.: Unter /System/Library/Frameworks/JavaVM.framework )

Es ist erwähnenswert, dass /System/Library/Frameworks/JavaVM.framework einen Ordner Versions enthält, und zumindest in meinem Fall enthielt dieser Ordner Versions:

lrwxr-xr-x  10 1.4 -> CurrentJDK
lrwxr-xr-x  10 1.4.2 -> CurrentJDK
lrwxr-xr-x  10 1.5 -> CurrentJDK
lrwxr-xr-x  10 1.5.0 -> CurrentJDK
lrwxr-xr-x  10 1.6 -> CurrentJDK
lrwxr-xr-x  10 1.6.0 -> CurrentJDK
drwxr-xr-x 238 A
lrwxr-xr-x   1 Current -> A
lrwxr-xr-x  59 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents

Es scheint nicht sinnvoll zu sein, CurrentJDK auf ein nicht vorhandenes Verzeichnis zu verweisen, daher habe ich diesen Befehl im Ordner /System/Library/Frameworks/JavaVM.framework/Versions ausgeführt:

sudo ln -sf /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents CurrentJDK

Da hier mein neues JDK ist installiert.

UPDATE: Nachdem ich Java 1.6 von meinem Computer entfernt hatte, wurde mir beim nächsten Ausführen von PhpStorm mitgeteilt, dass die Java SE 6-Laufzeit heruntergeladen und installiert werden muss. Danach wurde der Link /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK auf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents zurückgesetzt. Es scheint also, dass das 1.6 JDK (oder zumindest der JRE-Teil davon) abhängig von anderen von Ihnen verwendeten Apps immer wieder zurückkehrt.

 6
Author: jeffpar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-04-17 19:31:10