使用 WSL 环境在 Goland 中开发 Go 项目
在了解字节开源 RPC 框架 Kitex 的过程中一直使用的云服务器进行运行,但碍于服务器性能不足和 JB Getaway 功能还并不完善,所以想到使用 WSL 进行开发。
而使用 WSL 开发的优势并不止这些,例如 Redis 在 WSL 中可以使用最新版本,增加很多功能,还有其他的优势等待你的探索。
什么是WSL
Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行(这段是直接从百度百科上摘抄的)
如果没有Mac或者云服务器的话,想要使用一些不能在Win系统中运行的工具或框架,最好的解决方法就是WSL,接下来详细说说怎么用
安装WSL
微软在官方文档中提供了安装的详细方法,可能有读者由于特殊原因进入不了文档,所以我还是简单说明一下
先决条件
必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。
若要检查 Windows 版本及内部版本号,选择 Windows 徽标键 + R,然后键入“winver”,选择“确定” 。 可通过选择“开始”>“设置”>“Windows 更新”>“检查更新”来更新到最新的 Windows 版本。
如果你运行的是旧版,或只是不想使用 install 命令并希望获得分步指引,请参阅旧版 WSL 手动安装步骤。
安装
现在,可以在管理员 PowerShell 或 Windows 命令提示符中输入此命令,然后重启计算机来安装运行适用于 Linux 的 Windows 子系统 (WSL) 所需的全部内容。
PowerShell 复制
此命令将启用所需的可选组件,下载最新的 Linux 内核,将 WSL 2 设置为默认值,并安装 Linux 发行版(默认安装 Ubuntu,请参阅下文更改此设置)。
首次启动新安装的 Linux 发行版时,将打开一个控制台窗口,要求你等待将文件解压缩并存储到计算机上。 未来的所有启动时间应不到一秒。
上述命令仅在完全未安装 WSL 时才有效,如果运行 并查看 WSL 帮助文本,请尝试运行 以查看可用发行版列表并运行 以安装发行版。
更改默认安装的 Linux 发行版
默认情况下,安装的 Linux 分发版为 Ubuntu。 可以使用 标志进行更改。
若要更改安装的发行版,请输入:。 将 替换为要安装的发行版的名称。若要查看可通过在线商店下载的可用 Linux 发行版列表,请输入: 或 。若要在初始安装后安装其他 Linux 发行版,还可使用命令:。
提示
如果要通过 Linux/Bash 命令行(而不是通过 PowerShell 或命令提示符)安装其他发行版,必须在命令中使用 .exe: 或若要列出可用发行版,则使用:。
如果在安装过程中遇到问题,请查看疑难解答指南的安装部分。
设置 Linux 用户信息
安装 WSL 后,需要为新安装的 Linux 发行版创建用户帐户和密码。 请参阅设置 WSL 开发环境的最佳做法指南来了解详细信息。
设置和最佳做法
建议遵循设置 WSL 开发环境的最佳做法这一指南,逐步了解以下操作:为已安装的 Linux 发行版设置用户名和密码、使用基本的 WSL 命令、安装和自定义 Windows 终端、针对 Git 版本控制进行设置、使用 VS Code 远程服务器进行代码编辑和调试、文件存储的最佳做法、设置数据库、装载外部驱动器、设置 GPU 加速等。
检查正在运行的 WSL 版本
可列出已安装的 Linux 发行版,并通过在 PowerShell 或 Windows 命令提示符中输入以下命令来检查每个发行版的 WSL 版本:。
要在安装新的 Linux 发行版时将默认版本设置为 WSL 1 或 WSL 2,请使用命令 ,将 替换为 1 或 2。
要设置与 命令一起使用的默认 Linux 发行版,请输入 或 ,将 替换为要使用的 Linux 发行版的名称。 例如,从 PowerShell/CMD 输入 ,将默认发行版设置为 Debian。 现在从 Powershell 运行 将在 Debian 中运行 命令。
要在 PowerShell 或 Windows 命令提示符下运行特定的 WSL 发行版而不更改默认发行版,请使用命令 ,将 替换为要使用的发行版的名称。
有关详细信息,请参阅 WSL 的基本命令指南。
将版本从 WSL 1 升级到 WSL 2
要在以前安装的 Linux 发行版上从 WSL 1 更新到 WSL 2,请使用命令 ,将 替换为要更新的 Linux 发行版的名称。 例如, 会将 Ubuntu 20.04 发行版设置为使用 WSL 2。 可能还需要启用 WSL 2 使用的虚拟机可选组件并安装内核包(如果尚未这样做)。
默认情况下,新的 Linux 安装将设置为 WSL 2,但 命令也可用于从 WSL 2 降级到 WSL 1。 要查看 Linux 发行版是设置为 WSL 1 还是 WSL 2,请使用命令 。
如需了解更多信息,请参阅 WSL 命令参考以获取 WSL 命令列表,并参阅比较 WSL 1 和 WSL 2,获取有关用于你的工作场景的指南,或参阅设置 WSL 开发环境的最佳做法,了解有关使用 WSL 设置良好开发工作流的一般指南。
一般来说现在我们都使用的是 WSL2 ,功能更强大,更方便
配置 WSL 的 Go 语言环境
既然我们要在 WSL 中进行开发,所以像 Win 一样,我们也需要进行 Go 语言环境的配置。
下载Go安装包
大家可以去官网选择适合自己的版本,这里我选择的是最新的1.18.2。
将安装包解压到
然后我们就可以进行环境变量的设置。
设置环境变量
使用 vim 在路径 ~/.bash_profile 中写入环境变量 。
若你的WSL中没有 ~/.bash_profile,可以将环境变量添加到 /etc/profile
咱们提前建好文件夹并在 GOPATH 路径下放 pkg、bin、src 三个文件夹。
然后执行 或 。
自此我们的环境就配置好了,可以进行简单的测试操作。
测试
在 test.go 文件中简单放入几行可执行代码。
测试成功后我们就可以在 Goland 上愉快开发了。
使用 WSL 环境在 Goland 中进行开发
首先我们要在 Goland 中创建一个新项目。
创建之后就可以像以前一样正常开发了,还有更多的设置可以去到 Jetbrains 关于这个的官方文档中了解。
PS:有一个常见的坑就是使用 WSL 环境后 Git 就用不了了,这是因为 DNS 被污染了,去到 DNS 配置那里修改一下就行
结语
这大概就是这两天我总结出的教程,如果有问题可以私聊我或评论,我都会尽力解答。
这是我的 GitHub 主页 github.com/L2ncE。
欢迎大家 Follow/Star/Fork 三连。
参考
https://baike.baidu.com/item/wsl/20359185?fr=aladdin
https://docs.microsoft.com/zh-cn/windows/wsl/install