WSL
最后修改时间:2023 年 9 月 7 日WSL ( WSL 2 ) – 适用于 Linux 的 Windows 子系统 – 是一个兼容层,用于在 Windows 10 及更高版本上本机运行 Linux 二进制可执行文件。目前,它支持多种Linux发行版,例如Ubuntu、OpenSUSE和SLES。
IntelliJ IDEA 允许您在 WSL 文件系统中创建和打开项目,在 WSL 环境中运行和调试应用程序。您还可以使用基于 Windows 的本地项目,并通过运行目标功能在 WSL 中远程运行应用程序。
配置 WSL
从Microsoft Store下载并安装 WSL 发行版(例如 Ubuntu)。
对于此步骤,请确保至少使用带有最新“Fall Creators Update”(最低版本 1709,内部版本 16299.15)的 Windows 10 或更高版本。有关说明,请参阅官方指南安装适用于 Linux 的 Windows 子系统。
要使用WSL 2,您的 Windows 版本应该是 10 build 18917 或更高版本。请按照以下说明切换分配。
请注意,IntelliJ IDEA 不支持旧版 WSL,您可能在将系统升级到 Windows 10 版本 16299.15 或更高版本之前安装了旧版 WSL 。在这种情况下,您需要更新 WSL 发行版。
运行 Linux 发行版。
首次启动时,系统可能会提示您启用 Windows 可选功能。在这种情况下,您需要执行以下操作:
以管理员身份打开 Windows PowerShell 并运行
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
重启你的电脑。
您可以创建一个项目并将其存储在 WSL 环境中,从 WSL 文件系统中打开一个项目,然后在 WSL 中进一步开发您的项目。
笔记
在创建或打开 Java 项目之前,请确保在 WSL 中添加所需的 JDK 版本。
如果您使用 Maven 作为构建工具,请将 Maven 发行版添加到 WSL 环境中。您还需要将路径变量export M2_HOME=
/path 添加到.profile文件中。/to /maven
在WSL文件系统中创建一个新项目
使用您最喜欢的 SDK 管理器将所需的 JDK 安装到 WSL 环境。
在欢迎屏幕上,单击“新建项目”。
在打开的页面上,选择要创建的项目类型,然后从右侧的选项中选择项目 SDK(WSL 中配置的 JDK)。点击下一步。
在下一页上,指定项目名称和项目位置。WSL 的项目位置将显示以\ \wsl$开头的 WSL 文件系统的绝对路径。
您可以手动键入项目位置的路径,或者单击并在打开的对话框中选择文件夹。
单击“完成”。
IntelliJ IDEA 创建一个位于 WSL 中的项目,您可以在 WSL 环境中开发和构建您的项目,而无需离开 IDE。
打开存储在 WSL 文件系统中的项目
在 IntelliJ IDEA 中,您可以直接打开存储在 WSL 文件系统中的项目,并像处理任何其他项目一样使用它。
单击欢迎屏幕上的“打开”或选择“文件”|“ 从主菜单打开。
在打开的对话框中,选择 WSL 文件系统中包含要打开的项目的文件夹,或手动键入\\ wsl$项目位置的路径。
提示
IntelliJ IDEA 支持来自 Windows Subsystem for Linux 2 (WSL2) 的 Git,该子系统在Windows 10 版本 2004中提供。
如果 Windows 上未安装 Git,IntelliJ IDEA 会在 WSL 中搜索 Git 并从那里使用它。此外,对于使用\ \wsl$路径打开的项目,IntelliJ IDEA 会自动从 WSL 切换到 Git 。
有关在 IntelliJ IDEA 中使用 Git 的更多信息,请参阅Git。
当您在项目中运行代码时,它会在 WSL 中运行。如果打开运行配置,请注意 IntelliJ IDEA 将 WSL 称为本地计算机。
代码执行的结果显示在“运行”工具窗口中。
在 WSL 中配置终端
要在 WSL 配置中运行终端,请打开项目设置/首选项( ) 并转到工具 | 终端。CtrlAlt0S
在Shell 路径字段中指定命令:
wsl.exe
使用默认的 Linux 发行版wsl.exe -d <distribution name>
使用特定的 Linux 发行版
单击“确定”保存更改。
切换到终端工具窗口并键入任意命令以检查输出。
使用 WSL 在 Windows 文件系统中运行项目
您可以使用本地 JDK 在 Windows 操作系统上本地创建或打开项目,然后使用运行目标在 WSL 中运行已编译的代码。这可能对跨平台开发有帮助。
笔记
仅 IntelliJ IDEA Ultimate 版本支持运行目标功能。
为 WSL 创建运行配置
转到“运行”| 编辑配置。或者,按,然后按。AltShiftF1000
选择支持的运行/调试配置类型之一。
从“运行于”菜单中的“新目标”部分下,选择“WSL”以添加WSL目标。
添加 WSL 目标时,IntelliJ IDEA 会执行自省并自动在 WSL 中添加远程 JDK 的路径,并在“新建目标:WSL”对话框中添加 JDK 版本。
如果需要向现有 WSL 目标添加其他信息,请单击“管理目标...” ,然后在“运行目标”对话框中添加所需信息。例如,您可以选择 Maven 或 Gradle 作为运行时。单击“确定”保存更改。
从主菜单中,单击“运行”并选择必要的运行配置,或按 ( ) 运行代码并在“运行”工具窗口中检查输出。ShiftF10
防火墙配置
您需要执行以下步骤来确保项目的构建正常进行。
配置防火墙设置
以管理员身份运行Windows PowerShell。
执行以下命令以允许使用 WSL 进行连接:
New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow
然后执行命令更新防火墙规则:
Get-NetFirewallProfile -Name Public | Get-NetFirewallRule | where DisplayName -ILike "IntelliJ IDEA*" | Disable-NetFirewallRule
笔记
如果您使用其他 IDE,请替换
IntelliJ IDEA*
为它的名称。现在启动调试器会话。当Windows 防火墙弹出窗口出现时,选择公共网络复选框。
感谢您的反馈意见!