Многие ответы рекомендуют установить Linux JDK, даже если у них есть отличный Windows JDK. Красота WSL заключается в том, что вам не нужно делать подобные вещи, поскольку файловые системы совместимы. Пока вы принимаете во внимание расширения файлов (описанные ниже), вам нужно будет установить оба только для нишевых ситуаций.
Простой метод
Вы можете сделать это очень просто, добавив следующую строку кода в свой .bashrc
файл, предполагая, что ваши переменные среды Windows установлены правильно и WSL установлен:
# Shared environment variables
export JAVA_HOME=/mnt/d/Java/jdk11.0.4_10
Просто убедитесь, что вы изменили каталог, чтобы указать на вашу папку JDK. В моем случае это то, D:\Java\jdk11.0.4_10
что в WSL/mnt/d/Java/jdk11.0.4_10
Кроме того, поскольку вы используете двоичные файлы Windows, вы должны указать тип файла при запуске из оболочки WSL bash:
пример
Вызов Windows JDK из:
CMD
:
javac MyClass.java
java MyClass
WSL:
javac.exe MyClass.java
java.exe MyClass
Примечание. WSL требует, .exe
поскольку это двоичный файл Windows. При использовании Linux-дистрибутива OpenJDK расширение не требуется.