Jak mogę całkowicie usunąć Javę Apple 6 i ustawić Oracle Java 7 jako domyślną dla wszystkiego?


12

Chciałbym całkowicie usunąć Java 6 Apple'a i ustawić Java 7 Oracle jako domyślną dla każdego programu. Na przykład z Eclipse musiałem bawić się z eclipse.ini, aby określić JAVA_HOME dla Java 7 i to samo dla TunnelBear. Jednak Aptana nie ma szczęścia (nadal chce Java Apple'a) Czy istnieje sposób na ustawienie Java Oracle jako domyślnej pod względem PATH?

macos  java 

1
Myślę, że Java 7 jest domyślną ścieżką dla PATH, ponieważ / usr / bin / java powinien być Java 7. Problem polega jednak na tym, że .apps ma coś innego w swoich plikach
.plist

Odpowiedzi:


4

Pobierz i zainstaluj /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdknajnowszą wersję Java Development Kit (JDK) firmy Oracle, która umieści ją w (lub w jakiejkolwiek najnowszej wersji). Teraz uruchom Terminal.app i wprowadź następujące polecenia:

  1. cd /System/Library/Java/JavaVirtualMachines (przejdź do odpowiedniego katalogu)

  2. sudo mv 1.6.0.jdk backup.1.6.0.jdk (zachowaj stary JDK, na wszelki wypadek - musisz mieć hasło administratora, aby to zrobić)

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk 1.6.0.jdk (połącz swoją nową instalację JDK z miejscem, w którym aplikacje oczekują starej)

Pamiętaj, że przy kolejnych aktualizacjach jdk musisz zaktualizować dowiązanie symboliczne do nowego katalogu:

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

Nie powinieneś tworzyć dowiązania symbolicznego 1.6.x, aplikacja nie będzie oczekiwać, że jdk będzie w / System. Jeśli już, powinieneś ustawić JAVA_HOME w swoim profilu.
idam

2

Te instrukcje działały dla mnie dobrze w OS X Mavericks.

  • Usuń maszyny JVM firmy Apple

    $ sudo rm -rf /System/Library/Java/JavaVirtualMachines/
  • Usuń rekordy instalatora

    $ sudo rm /private/var/db/receipts/com.apple.pkg.JavaForMacOSX*
  • Usuń potwierdzenia instalatora (usuń <dict>...</dict>wpisy, które odwołują się do com.apple i java)

    $ sudo emacs /Library/Receipts/InstallHistory.plist
  • Ustaw dowiązania symboliczne dla Java 7

    $ sudo rm /usr/bin/java
    $ sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home/bin/java /usr/bin/java
  • Opcjonalnie dowiązanie symboliczne JAVA_HOME

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

0

Cóż, jeśli zainstalujesz najnowszą aktualizację Java firmy Apple, powinna ona odinstalować Javę 6. Możesz przejść bezpośrednio do strony internetowej Oracle, aby pobrać Javę 7. To właśnie zrobiłem. Mając tylko Javę 7 w twoim systemie, powinno to być ustawienie domyślne.


W Lionie aktualizacja Java nie odinstalowała Java firmy Apple - / usr / bin / java to teraz Java 7, ale Java 6 jest nadal użyteczna jako/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
user151019

Używam tylko Java 7 i pobieranie aktualizacji Apple na Javę jest nieco nudne. Chcę to mieć - ktoś jeszcze to zrobił? (tzn. tyle, że Apple nie wypchnie aktualizacji specyficznych dla Javy; nie mam nic przeciwko, by przejrzeć całą Oracle bezpośrednio).
akauppi

0

Wiem, że jest to stary wątek, ale jeśli ktoś ma Adobe CS5 na swoim komputerze, MUSI MIEĆ wersję Java 1.6 Apple 1.6, aby pakiet mógł działać. Uruchomiłem Eclipse, który wymagał wersji 1.7 lub nowszej. Myślałem, że zastąpi wersję Apple, ale tak nie było. Wersja Apple znajduje się w folderze System / Library, a wersja Oracle znajduje się w folderze Library.

Pomyślałem, że dodałbym trochę więcej informacji dla tych, którzy mogą potrzebować tych informacji.

OS X Lion


Ta informacja znajduje się w innych odpowiedziach
user151019

Nie sprawdziłem. Przepraszam.
kdd
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.