在 Windows 10 上的 WSL2 上使用 JDK 的正确方法是什么?
What is the proper way of using JDK on WSL2 on Windows 10?
我已经在 WSL 上安装了 Ubuntu 20.4 LTS。我的 windows 10 已经安装了 JDK。我需要在 WSL 上的 ubuntu 上安装 JDK 还是可以在 Ubuntu 中使用 Windows 10 JDK?你如何在 WSL 上进行 Java 编程?哪种方法正确?
我只是想知道我是否需要在 Linux 上再次安装所有开发工具和二进制文件,这不会花费很多 space 并且占用很多 CPU/Ram资源?
没有“正确的”(如 支持 或 推荐 由 JDK 提供者)安装或在 WSL 上使用 Java。我找不到任何官方推荐。
但是,可以从 WSL 安装和使用 Oracle JDK 进行 Windows 安装,或者将 OpenJDK Java 从Ubuntu 包管理器。
I was just wondering if I need to install all the development tools and binaries again on Linux won't it take a lot of space & hog a lot of CPU/Ram resources ?
见上文。但是请注意,如果您同时是 运行 两种 JVM [=35],那么您只会“hog CPU/RAM” =].
参考文献:
- Java JDK 11 install script for Windows Subsystem for Linux (WSL)
- Windows Subsystem for Linux Java Setup ... 使用 Ubuntu 包系统。
(如果以上内容不能解决您的问题,还有更多关于此主题的文章。)
运行 以具有 sudo 权限或 root 的用户身份执行以下命令更新包索引并安装 OpenJDK 11 JDK 包:
$ sudo apt update
$ sudo apt install openjdk-11-jdk
安装完成后,您可以通过检查Java版本来验证它:
$ java -version
输出应如下所示:
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
设置JAVA_HOME环境变量:
打开JDK 11 位于/usr/lib/jvm/java-11-openjdk-amd64/bin/java
找到首选 Java 安装路径后,打开 /etc/environment 文件:
$ sudo nano /etc/environment
假设您要将JAVA_HOME设置为指向OpenJDK11,在文件末尾添加以下行:
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
要使更改在当前 shell 上生效,您可以注销并登录或 运行 以下源命令:
$ source /etc/environment
验证 JAVA_HOME 环境变量是否设置正确:
$ echo $JAVA_HOME
您应该看到 Java 安装的路径:
/usr/lib/jvm/java-11-openjdk-amd64
您可以按照下面的 link 作为参考
How to Install Java on Ubuntu 20.04
我们可以在 wsl2 中使用 Windows JDK。我们应该将其添加到 /etc/environment
JAVA_HOME=/mnt/c/Program Files/Java/jdk-11.0.8/bin/
通过添加此 bin 文件夹,我们可以 运行 常规命令但附加 .exe 格式,例如:javac.exe hello.java
java.exe hello.java
如果您不喜欢这种方式,请添加别名,如下所示:
alias java='java.exe'
alias javac='javac.exe'
我想我们可以像这样使用任何 windows 程序:)
我已经在 WSL 上安装了 Ubuntu 20.4 LTS。我的 windows 10 已经安装了 JDK。我需要在 WSL 上的 ubuntu 上安装 JDK 还是可以在 Ubuntu 中使用 Windows 10 JDK?你如何在 WSL 上进行 Java 编程?哪种方法正确?
我只是想知道我是否需要在 Linux 上再次安装所有开发工具和二进制文件,这不会花费很多 space 并且占用很多 CPU/Ram资源?
没有“正确的”(如 支持 或 推荐 由 JDK 提供者)安装或在 WSL 上使用 Java。我找不到任何官方推荐。
但是,可以从 WSL 安装和使用 Oracle JDK 进行 Windows 安装,或者将 OpenJDK Java 从Ubuntu 包管理器。
I was just wondering if I need to install all the development tools and binaries again on Linux won't it take a lot of space & hog a lot of CPU/Ram resources ?
见上文。但是请注意,如果您同时是 运行 两种 JVM [=35],那么您只会“hog CPU/RAM” =].
参考文献:
- Java JDK 11 install script for Windows Subsystem for Linux (WSL)
- Windows Subsystem for Linux Java Setup ... 使用 Ubuntu 包系统。
(如果以上内容不能解决您的问题,还有更多关于此主题的文章。)
运行 以具有 sudo 权限或 root 的用户身份执行以下命令更新包索引并安装 OpenJDK 11 JDK 包:
$ sudo apt update
$ sudo apt install openjdk-11-jdk
安装完成后,您可以通过检查Java版本来验证它:
$ java -version
输出应如下所示:
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)
设置JAVA_HOME环境变量: 打开JDK 11 位于/usr/lib/jvm/java-11-openjdk-amd64/bin/java
找到首选 Java 安装路径后,打开 /etc/environment 文件:
$ sudo nano /etc/environment
假设您要将JAVA_HOME设置为指向OpenJDK11,在文件末尾添加以下行:
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
要使更改在当前 shell 上生效,您可以注销并登录或 运行 以下源命令:
$ source /etc/environment
验证 JAVA_HOME 环境变量是否设置正确:
$ echo $JAVA_HOME
您应该看到 Java 安装的路径:
/usr/lib/jvm/java-11-openjdk-amd64
您可以按照下面的 link 作为参考 How to Install Java on Ubuntu 20.04
我们可以在 wsl2 中使用 Windows JDK。我们应该将其添加到 /etc/environment
JAVA_HOME=/mnt/c/Program Files/Java/jdk-11.0.8/bin/
通过添加此 bin 文件夹,我们可以 运行 常规命令但附加 .exe 格式,例如:javac.exe hello.java
java.exe hello.java
如果您不喜欢这种方式,请添加别名,如下所示:
alias java='java.exe'
alias javac='javac.exe'
我想我们可以像这样使用任何 windows 程序:)