1 votes

Le paramétrage de JAVA_HOME ne fonctionne pas dans Sierra

J'ai les versions suivantes de Java :

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (4):
    9.0.1, x86_64:  "Java SE 9.0.1" /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home
    1.8.0_131, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
    1.8.0_121, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
    1.7.0_80, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home

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

Ensuite, je veux définir la version de Java à 1.7 :

$ JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home

Ça semble correct, mais :

$ java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

Pourquoi ?

4voto

paper1111 Points 545

Pour régler JAVA_HOME vous devez utiliser

export JAVA_HOME=`/usr/libexec/java_home -v "1.7*"`

ou

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home

actuellement vous n'avez utilisé export sur la variable. Les variables d'environnement qui sont définies sans la balise export ne sera pas héritée dans l'environnement des commandes que vous appelez, elle ne sera donc pas lue par Java.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X