Bagaimana saya bisa sepenuhnya menghapus Apple Java 6 dan menjadikan Oracle 7 Java default untuk semuanya?

12

Saya ingin sepenuhnya menghapus Java 6 Apple dan menjadikan Oracle Java 7 default untuk setiap program. Sebagai contoh, dengan Eclipse saya harus mengutak-atik eclipse.ini untuk menentukan JAVA_HOME untuk Java 7, dan hal yang sama untuk TunnelBear. Tidak beruntung bagi Aptana, meskipun (masih menginginkan Java milik Apple) Apakah ada cara untuk menjadikan Java Java sebagai standar dalam hal PATH?


sumber
1
Saya pikir Java 7 adalah default untuk PATH karena / usr / bin / java harus Java 7. Namun masalahnya adalah .apps memiliki sesuatu yang lain dalam file
.plist

Jawaban:

4

Unduh dan instal Java Development Kit (JDK) terbaru dari Oracle, yang akan memasukkannya /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk(atau apa pun versi terbarunya). Sekarang, mulai Terminal.app, dan masukkan perintah berikut:

  1. cd /System/Library/Java/JavaVirtualMachines (ubah ke direktori yang tepat)

  2. sudo mv 1.6.0.jdk backup.1.6.0.jdk (simpan JDK lama, untuk berjaga-jaga - Anda harus memiliki kata sandi administrator untuk melakukan ini)

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk 1.6.0.jdk (tautkan instalasi JDK baru Anda ke tempat aplikasi mengharapkan yang lama)

Ingatlah bahwa dengan pembaruan jdk lebih lanjut, Anda harus memperbarui symlink ke direktori baru:

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
MattDMo
sumber
Anda seharusnya tidak membuat symlink 1.6.x, aplikasi tidak akan mengharapkan jdk berada di / System. Jika ada, Anda harus mengatur JAVA_HOME di profil Anda.
anddam
2

Instruksi ini bekerja dengan baik untuk saya di OS X Mavericks.

  • Hapus JVM Apple

    $ sudo rm -rf /System/Library/Java/JavaVirtualMachines/
  • Hapus catatan penginstal

    $ sudo rm /private/var/db/receipts/com.apple.pkg.JavaForMacOSX*
  • Hapus tanda terima pemasang (hapus <dict>...</dict>entri yang merujuk com.apple dan java)

    $ sudo emacs /Library/Receipts/InstallHistory.plist
  • Setel symlinks untuk 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
  • Secara opsional symlink JAVA_HOME

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

Nah, jika Anda menginstal pembaruan Java terbaru dari Apple, itu seharusnya benar-benar menghapus Java 6. Anda dapat langsung mengunjungi situs web Oracle untuk mengunduh Java 7. Itulah yang saya lakukan. Dengan hanya Java 7 di sistem Anda, yang seharusnya menjadikannya default.

kal-al
sumber
Pada Lion, pembaruan Java tidak menghapus instalan Java - / usr / bin / java Apple sekarang Java 7 tetapi Java 6 masih dapat digunakan sebagai/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
user151019
Saya hanya menggunakan Java 7 dan mendapatkan pembaruan Apple di Jawa agak membosankan. Saya ingin keluar - belum ada yang berhasil seperti itu? (Yaitu begitu banyak bahwa Apple tidak akan mendorong pembaruan khusus Java; Saya baik-baik saja mengambil semua melalui Oracle langsung).
akauppi
0

Saya tahu ini adalah utas lama, tetapi jika seseorang memiliki Adobe CS5 pada mesin mereka, itu HARUS MEMILIKI versi java dari Apple 1.6 untuk menjalankan suite. Saya menjalankan Eclipse yang membutuhkan 1,7 atau lebih tinggi. Saya pikir itu akan menggantikan versi Apple, tetapi tidak. Versi Apple ada di folder System / Library dan versi Oracle ada di folder Library.

Kupikir saya akan menambahkan sedikit info lebih lanjut bagi mereka yang mungkin membutuhkan informasi ini.

OS X Lion

kdd
sumber
Info itu ada di jawaban lain
user151019
Tidak memeriksa. Maaf.
kdd