Cara menurunkan versi Java dari 9 menjadi 8 di MACOS. Eclipse tidak berjalan dengan Java 9

97

Cara menurunkan versi Java dari 9 menjadi 8 di macOS Sierra 10.12.6 (16G29). Saya mencoba menghapus plugin Java dan menginstal Java 8, namun versi Java dan javac menunjukkan 9 di terminal, tetapi dalam preferensi sistem adalah 8. Terima kasih sebelumnya!

LearningNew
sumber
Versi MacOS mungkin relevan; pertimbangkan untuk mengedit & menambahkannya ke pertanyaan (bukan memposting sebagai komentar).
AJNeufeld
apakah Anda sudah melihat wiki.eclipse.org/Configure_Eclipse_for_Java_9 ?
cello

Jawaban:

308

Anda tidak perlu menurunkan nilai. Anda dapat menjalankan lebih dari satu versi Java di MacOS. Anda dapat menyetel versi terminal Anda dengan perintah ini di MacOS.

# List Java versions installed
/usr/libexec/java_home -V

# Java 11
export JAVA_HOME=$(/usr/libexec/java_home -v 11)

# Java 1.8
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

# Java 1.7
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)

# Java 1.6
export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)

Anda dapat menyetel nilai default di .bashrc, .profile, atau .zprofile

mdeterman.dll
sumber
3
Terima kasih banyak, itu membantu saya! Sayang sekali Java Control Panel di MacOS tidak mengekspos pengaturan seperti ini.
sesm
Bisakah Anda menjelaskan jawaban Anda? Apa /usr/libexec/java_home -v 11maksudnya
Sandeepan Nath
1
Melakukan export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)dan export JAVA_HOME=$(/usr/libexec/java_home -v 1.8.0_211)tidak memecahkan masalah saya. Terminal saya juga sudah restart.
HendraWD
144

Beginilah cara saya melakukannya. Anda tidak perlu menghapus Java 9 atau versi yang lebih baru.

Langkah 1: Instal Java 8

Anda dapat mengunduh Java 8 dari sini: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Langkah 2: Setelah instalasi Java 8. Konfirmasikan instalasi semua versi. Ketik perintah berikut di terminal Anda.

/usr/libexec/java_home -V

Langkah 3: Edit .bash_profile

sudo nano ~/.bash_profile

Langkah 4: Tambahkan 1.8 sebagai default. (Tambahkan baris di bawah ini ke file bash_profile).

export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

Sekarang Tekan CTRL + X untuk keluar dari pesta. Tekan 'Y' untuk menyimpan perubahan.

Langkah 5: Muat ulang bash_profile

source ~/.bash_profile

Langkah 6: Konfirmasikan versi Java saat ini

java -version
VK321
sumber
Apakah mungkin mengubah versi javaws dengan cara yang sama? Karena java -version melaporkan bahwa itu berubah, tetapi javaw masih menjalankan versi terbaru yang tersedia.
lapkritinis
11

Jika Anda memiliki beberapa versi Java yang diinstal di Mac Anda, berikut adalah cara cepat untuk mengganti versi default menggunakan Terminal. Dalam contoh ini, saya akan mengalihkan Java 10 ke Java 8.

$ java -version
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    10.0.1, x86_64: "Java SE 10.0.1"    /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
    1.8.0_171, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home

Kemudian, di .bash_profile Anda tambahkan yang berikut ini.

# Java 8
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

Sekarang jika Anda mencoba java -version lagi, Anda akan melihat versi yang Anda inginkan.

$ java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
Dorjee Dhondup
sumber
4

Karena memungkinkan untuk menginstal lebih dari satu versi java, saya telah menginstal banyak 3 versi tanpa sadar tetapi itu mengarah ke versi terbaru "11.0.2"

Saya bisa menyelesaikan masalah ini dengan langkah-langkah di bawah ini untuk pindah ke "1,8"

$java -version

openjdk versi "11.0.2" 2019-01-15 OpenJDK Runtime Environment 18.9 (build 11.0.2 + 9) OpenJDK 64-Bit Server VM 18.9 (build 11.0.2 + 9, mode campuran)

cd /Library/Java/JavaVirtualMachines
ls

jdk1.8.0_201.jdk jdk1.8.0_202.jdk openjdk-11.0.2.jdk

sudo rm -rf openjdk-11.0.2.jdk
sudo rm -rf jdk1.8.0_201.jdk
ls

jdk1.8.0_202.jdk

java -version

versi java "1.8.0_202-ea" Java (TM) SE Runtime Environment (build 1.8.0_202-ea-b03) Java HotSpot (TM) 64-Bit Server VM (build 25.202-b03, mode campuran)

keshav
sumber
Saya akan menghindari menghapus file di sistem Anda. Alih-alih, alihkan saja $JAVA_HOMEvariabel env.
simeg
3

Pertanyaan lama tetapi baru saja mengalami masalah itu / jira bodoh mengalami masalah dengan java 10 / dan tidak menemukan jawaban yang sederhana di sini jadi biarkan saja:

$ /usr/libexec/java_home -Vmenunjukkan versi yang diinstal dan lokasinya sehingga Anda dapat dengan mudah menghapusnya /Library/Java/JavaVirtualMachines/<the_version_you_want_to_remove>. Voila

Dan
sumber
1

Solusi paling sederhana mungkin dengan menginstal Java 8 secara paralel dengan Java 9 (jika tidak masih ada) dan menentukan JVM yang akan digunakan secara eksplisit eclipse.ini. Anda dapat menemukan deskripsi dari pengaturan ini termasuk deskripsi bagaimana menemukan eclipse.inipada Mac di Eclipsepedia

Lothar
sumber
-2

Anda dapat menghapus "JavaAppletPlugin.plugin" yang ditemukan di Spotlight atau Finder, kemudian menginstal ulang Java 8 yang telah diunduh.

Ini hanya akan menyelesaikan masalah Anda.

holosuda
sumber