Bagaimana cara menghapus Java 10? Atau kembali ke versi sebelumnya?

26

Pembaruan Java pada Mac saya menginstal versi Java 10.0.1 yang tidak jelas yang belum pernah saya dengar sebelumnya. Hasilnya adalah SEMUA aplikasi java saya tidak berjalan lagi, yang membuat Java tidak ada gunanya.

The instruksi resmi untuk menghapus Java adalah:

  • sudo rm -fr / Library / Internet \ Plug-Ins / JavaAppletPlugin.plugin

Yang tidak berguna karena saya tidak menggunakan Java di browser (siapa yang cukup gila untuk melakukannya?)

  • sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane

Yang tidak berguna karena hanya menghilangkan panel preferensi

  • sudo rm -fr ~ / Library / Application \ Support / Java

Yang tidak berguna karena direktori ini sudah kosong

Instruksi resmi untuk menghapus Java pada Mac tidak melakukan apa pun.

Jika saya menjalankan aplikasi Java saya dengan java-jar dari terminal mereka bekerja. Dari terminal, saya melihat ini:

/usr/libexec/java_home -V
Matching Java Virtual Machines (3):
    1.8.0_131, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
    1.6.0_65-b14-468, x86_64:   "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

Jadi, dari terminal, versi Java adalah 1.8.0_131, yang merupakan versi yang saya inginkan. Dari desktop, ketika saya meluncurkan aplikasi dengan JavaAppLauncher, versi Java adalah 10.0.1.

Bagaimana saya bisa memulihkan bencana ini yang dilakukan Oracle dengan pembaru otomatisnya?

Magnetic_dud
sumber

Jawaban:

4

Saya memiliki masalah yang sama: Saya telah menginstal Java 8, tetapi kemudian menginstal 10. Kemudian, saya menghapus 10, dan ketika saya meluncurkan stoples dari terminal itu akan berjalan di versi 8, dan ketika saya memeriksa versi dengan java -versiondi terminal I akan kembali java version "1.8.0_181. Namun ketika saya menjalankan .jar dari Finder , itu akan berjalan di v.10, dan juga jika saya pergi ke panel preferensi Java versi terdaftar sebagai versi 10. Ini tidak diinginkan: Saya mencoba untuk menghapus v10 sepenuhnya.

Kemudian, saya menghapus JavaAppletPlugin dengan rm /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugindan menginstal ulang Java SE JDK 8 dari online, dan lihat! itu berfungsi sekarang. Ketika saya menjalankan .jar, mereka berjalan di Java 8.

Saya menyadari Anda menyebutkan ini pada langkah pertama Anda, tetapi saya menyimpulkan bahwa Anda tidak melakukan langkah ini? Jika saya salah tentang itu maka Anda punya masalah lain. Tapi ini menyelesaikan masalah saya.

postilem
sumber
ya saya tidak mencoba untuk menghapus plugin applet karena bagaimanapun saya menonaktifkannya di browser
Magnetic_dud
Masuk akal total. Tetapi, berdasarkan pengalaman saya, tampaknya keberadaan JavaAppletPlugin mempengaruhi versi Java apa yang digunakan untuk menjalankan aplikasi .jar dari Finder. Bagi saya, saya menghapus JVM v10, tetapi hanya ketika saya menghapus JavaAppletPlugin, finder berhenti menggunakan v10 untuk menjalankan aplikasi .jar.
postilem
45

Saya percaya masalahnya adalah menavigasi ke direktori yang benar ... Setelah Anda berada di tempat yang seharusnya, Anda dapat menjalankan perintah sudo untuk menghapus versi java mana saja yang ingin Anda hapus.

Pertama, jalankan perintah di terminal untuk menentukan versi Java yang Anda jalankan,

java -version

maka Anda dapat menavigasi ke versi sial dari java yang ingin Anda hapus dengan menggunakan perintah berikut:

cd /Library/Java/JavaVirtualMachines

kemudian setelah Anda melihat berada di JavaVirtualMachinesjalur, ketik lsuntuk melihat versi Java apa yang telah Anda instal,

ls

dan akhirnya ketika Anda tahu versi atau versi Java mana yang ingin Anda hapus:

sudo rm -rf jdk-10.0.1.jdk #or whichever version you want to delete
Colin Ilgen
sumber
Masalahnya adalah bahwa versi yang ditampilkan panel kontrol tidak cocok dengan versi java di terminal. Jika saya ingin menghapus java 8.171 sepertinya tidak ada cara juga: imgur.com/a/iIK67bD
Magnetic_dud
Dan jdk 10.0.1 tidak ada dalam folder itu
Magnetic_dud
@Magnetic_dud Anda masih dapat melakukan debug menggunakan struktur direktori file Anda menggunakan perintah ls dan kemudian menghapus dan menginstal ulang Jdk kerja baru atau versi java apa pun yang Anda instal ..
Colin Ilgen
9

Jika Anda memiliki lebih dari satu versi jdk:

$ ls -l /Library/Java/JavaVirtualMachines
drwxr-xr-x  3 root  wheel  96 30 avr 15:15 jdk-10.0.1.jdk
drwxr-xr-x  3 root  wheel  96 30 avr 15:24 jdk1.8.0_172.jdk
drwxr-xr-x  3 root  wheel  96 17 oct 10:59 jdk1.8.0_191.jdk

ubah JAVA_HOME Anda

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home
Moccine
sumber
-1

Saya mengunduh versi lama (berfungsi) dari java.com

Faktanya, Java 8.171 adalah unduhan yang ditunjukkan secara default. Saya tidak tahu mengapa itu secara otomatis diperbarui ke 10.0.1 ketika kualitas beta.

Sekarang, itu tidak akan menginstalnya, ia mengatakan "Maaf, Anda memiliki Java 10.0.1 yang lebih baru dan lebih baik"

Untuk menginstal, jalankan perintah yang tampaknya tidak berguna yang disebutkan dalam pertanyaan. Java masih akan bekerja di terminal, tetapi kemudian installer akan memungkinkan Anda untuk menginstal versi yang tepat, 1.8_171

Sekarang, nonaktifkan pembaruan, jika Anda tidak ingin merusak aplikasi Anda lagi. Java adalah ancaman keamanan, itu harus diperbarui setiap bulan, jadi pastikan itu dinonaktifkan di browser Anda.

Untuk beberapa alasan, jika Anda menjalankan java-versi Anda masih mendapatkan:

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)

Yang merupakan versi salah lain. Bagaimanapun, yang penting adalah bahwa sekarang aplikasi Java Anda berfungsi, pastikan plugin browser dinonaktifkan untuk keamanan Anda.

Magnetic_dud
sumber