Wie kann ich Apples Java 6 vollständig entfernen und Oracle Java 7 als Standard für alles festlegen?


12

Ich möchte Apples Java 6 vollständig entfernen und Oracle Java 7 für jedes Programm als Standard festlegen. Bei Eclipse musste ich zum Beispiel mit eclipse.ini fummeln, um JAVA_HOME für Java 7 und dasselbe für TunnelBear anzugeben. Aptana hat jedoch kein Glück (es will immer noch Apples Java). Gibt es eine Möglichkeit, Oracle Java in Bezug auf PATH als Standard zu definieren?

macos  java 

1
Ich denke, Java 7 ist die Standardeinstellung für PATH, da / usr / bin / java Java 7 sein sollte. Das Problem ist jedoch, dass .apps etwas anderes in ihren .plist-Dateien haben
user151019

Antworten:


4

Laden Sie das neueste Java Development Kit (JDK) von Oracle herunter und installieren Sie es. Darin wird es /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdkabgelegt (oder in der jeweils neuesten Version). Starten Sie nun Terminal.app und geben Sie die folgenden Befehle ein:

  1. cd /System/Library/Java/JavaVirtualMachines (wechseln Sie in das richtige Verzeichnis)

  2. sudo mv 1.6.0.jdk backup.1.6.0.jdk (Behalten Sie das alte JDK für alle Fälle bei sich - Sie benötigen dazu ein Administratorkennwort.)

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk 1.6.0.jdk (Verknüpfen Sie Ihre neue JDK-Installation dort, wo Anwendungen die alte erwarten.)

Denken Sie daran, dass Sie bei weiteren JDK-Updates den Symlink auf das neue Verzeichnis aktualisieren müssen:

sudo rm /System/Library/Java/JavaVirtualMachines/1.6.0.jdk && sudo ln -s /Library/Java/JavaVirtualMachines/new_jdk_version /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

Sie sollten den Symlink 1.6.x nicht erstellen, da die Anwendung nicht erwartet, dass sich das JDK in / System befindet. Wenn überhaupt, sollten Sie JAVA_HOME in Ihrem Profil einstellen.
anddam

2

Diese Anleitung hat für mich unter OS X Mavericks gut funktioniert.

  • Entfernen Sie die JVMs von Apple

    $ sudo rm -rf /System/Library/Java/JavaVirtualMachines/
  • Installationsdatensätze entfernen

    $ sudo rm /private/var/db/receipts/com.apple.pkg.JavaForMacOSX*
  • Installer-Belege entfernen ( <dict>...</dict>Einträge löschen, die auf com.apple und java verweisen)

    $ sudo emacs /Library/Receipts/InstallHistory.plist
  • Stellen Sie die Symlinks für Java 7 ein

    $ sudo rm /usr/bin/java
    $ sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home/bin/java /usr/bin/java
  • Optionaler Symlink JAVA_HOME

    sudo rm /Library/Java/Home
    sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home /Library/Java/Home

0

Wenn Sie das neueste Java-Update von Apple installieren, sollte Java 6 tatsächlich deinstalliert werden. Sie können Java 7 direkt von der Oracle-Website herunterladen. Da auf Ihrem System nur Java 7 installiert ist, sollte dies als Standard festgelegt werden.


Auf Lion hat das Java-Update Apples Java nicht deinstalliert - / usr / bin / java ist jetzt Java 7, aber Java 6 ist immer noch verwendbar als/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
user151019

Ich verwende nur Java 7 und es ist etwas mühsam, Apple-Updates für Java zu erhalten. Ich will es raus - hat es schon jemand geschafft, es so zu haben? (dh so viel raus, dass Apple keine Java-spezifischen Updates pushen würde; ich kann Oracle direkt durchgehen).
Akauppi

0

Ich weiß, dass dies ein alter Thread ist, aber wenn einer Adobe CS5 auf seinem Computer hat, MUSS er die Apple 1.6-Version von Java haben, damit die Suite ausgeführt werden kann. Ich führte Eclipse aus, das 1.7 oder höher benötigte. Ich dachte, es würde die Apple-Version ersetzen, aber das tat es nicht. Die Apple-Version befindet sich im Ordner "System / Library" und die Oracle-Version im Ordner "Library".

Dachte, ich würde ein bisschen mehr Informationen für diejenigen hinzufügen, die diese Informationen benötigen.

OS X Lion


Diese Information steht in den anderen Antworten
user151019 30.03.16

Hab nicht nachgesehen. Es tut uns leid.
kdd
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.