web-dev-qa-db-fra.com

Le sous-système Windows pour Linux ne reconnaît pas la variable d'environnement Java_HOME

J'essaye d'obtenir que WSL reconnaisse ma variable d'environnement installée par Windows de Java_HOME. J'ai joint ce que j'ai dans mon bashrc et ce que j'ai dans mes variables d'environnement Windows ainsi que les sorties de cmd et bash. Java_HOME Env. Var.

<code>enter image description here</code>

À la fin de mon bashrc:

export Java_HOME="/mnt/d/Program Files/Java/jdk-11.0.1"
export PATH="/mnt/d/Program Files/Java/jdk-11.0.1/bin:$PATH"

ENTRÉE/SORTIE CMD:

C:\Users\jaall>javac --version
javac 11.0.1

ENTRÉE/SORTIE BASH:

myubuntu_name@DESKTOP-LUK3BII:~$ javac --version

Command 'javac' not found, but can be installed with:

Sudo apt install default-jdk
Sudo apt install openjdk-11-jdk-headless
Sudo apt install ecj
Sudo apt install openjdk-8-jdk-headless

Je suis coincé là-dessus depuis un certain temps et je ne peux pas le découvrir ou trouver une solution de travail en ligne. Merci!

10
Jawsh

Comme l'a suggéré Biswapriyo, vous devez utiliser WSLENV.

  1. Ouvrez PowerShell. Ensuite, définissez Java_HOME sur le chemin de votre installation Java.

  2. Dans votre cas, exécutez setx Java_HOME "D:\Program Files\Java\jdk-11.0.1"

Vous devriez voir un message qui dit "SUCCÈS: la valeur spécifiée a été enregistrée.

  1. Exécutez ensuite setx WSLENV "Java_HOME/p"

Vous devriez voir à nouveau le message de réussite.

  1. Tapez "env" dans votre invite bash WSL.

Vous devriez voir Java_HOME correctement défini à ce stade.

Remarque: Si l'étape 2 ne fonctionne pas, vous souhaiterez peut-être modifier le chemin d'accès à Java_HOME pour inclure le dossier "\ bin".

1
Mbuotidem Isaac