141 votes

Comment déclasser Java de 9 à 8 sur un MACOS. Eclipse ne fonctionne pas avec Java 9

Comment déclasser Java de 9 à 8 sur un macOS Sierra 10.12.6 (16G29). J'ai essayé de supprimer le plug-in Java et d'installer Java 8, mais la version Java et javac indique 9 dans le terminal, mais dans les préférences système, il s'agit de 8. Merci d'avance!

417voto

mdeterman Points 2519

Vous n'avez pas besoin de baisser la note. Vous pouvez exécuter plusieurs versions de Java sur MacOS. Vous pouvez définir la version de votre terminal avec cette commande sous 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)
 

Vous pouvez définir la valeur par défaut dans les fichiers .bashrc, .profile ou .zprofile.

195voto

VK321 Points 1765

C'est la façon dont je l'ai fait. Vous n'avez pas besoin de supprimer Java 9.

Étape 1: Installer Java 8

Vous pouvez télécharger Java 8 à partir d'ici: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Étape 2: Après l'installation de Java 8. Confirmer l'installation de toutes les versions.Tapez la commande suivante dans votre terminal.

/usr/libexec/java_home -V

Étape 3: Modifier .bash_profile

sudo nano ~/.bash_profile

Étape 4: Ajouter 1.8 en tant que par défaut. (Ajouter en dessous de la ligne de fichier bash_profile).

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

Maintenant, Appuyez sur CTRL+X pour quitter l'interpréteur de commandes bash. Appuyez sur " Y " pour enregistrer les modifications.

Étape 5: Recharger bash_profile

source ~/.bash_profile

Étape 6: Confirmer la version actuelle de Java

java -version

15voto

Dorjee Dhondup Points 172

Si plusieurs versions de Java sont installées sur votre Mac, voici un moyen rapide de passer de la version par défaut à l’aide de Terminal. Dans cet exemple, je vais passer de Java 10 à 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
 

Ensuite, dans votre .bash_profile, ajoutez ce qui suit.

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

Maintenant, si vous essayez à nouveau java -version, vous devriez voir la version de votre choix.

 $ 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)
 

7voto

keshav Points 1091

Car il permet d'installer plus d'une version de java, j'ai dû installer de nombreux 3 versions sans le savoir, mais c'était point à la dernière version "11.0.2"

Je pourrais en mesure de résoudre ce problème avec les étapes ci-dessous pour passer à "1.8"

$java -version

openjdk version 11.0.2" 2019-01-15 OpenJDK de l'Environnement d'Exécution de 18,9 (version 11.0.2+9) OpenJDK 64-Bit Server VM de 18,9 (version 11.0.2+9, en mode mixte)

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

java version "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, en mode mixte)

5voto

Dan Points 344

Vieille question, mais je n'ai que ce problème / jumb idiot ayant des problèmes avec java 10 / et je n'ai pas trouvé de réponse simple ici, alors je vais le laisser:

$ /usr/libexec/java_home -V indique les versions installées et leurs emplacements afin que vous puissiez simplement supprimer /Library/Java/JavaVirtualMachines/<the_version_you_want_to_remove> . Voila

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X