在 GoLand 中配置 WSL 环境跨平台开发的完整指南
本文将详细介绍如何在 Windows 上的 GoLand 中配置 Go SDK,以便在 WSL 中进行开发。附:期间坑比较多,需要注意如果Window已经安装了docker,那么也会有一个阉割版的wsl,需要重新再安装一个Ubuntu的wsl,并安装go。在设置sdk时候发现不能选择wsl,原因是项目是Window的而不是linux 于是将项目移入wsl中才可以正常设置sdk为wsl中的go。将你
在 GoLand 中配置 WSL 环境跨平台开发的完整指南
该片博客因由
为何要做这些步骤,直接在Window开发不行吗?
有些项目如DiceDB ,目前只支持在linux和mac下开发,想要在Window下开发除了安装虚拟机就只有这个办法可行了
引言
在现代开发环境中,跨平台开发变得越来越普遍。为了在 Windows 上利用 Linux 环境的强大功能,许多开发者选择使用 Windows Subsystem for Linux (WSL)。本文将详细介绍如何在 Windows 上的 GoLand 中配置 Go SDK,以便在 WSL 中进行开发。
目录
- 安装 WSL
- 在 WSL 中安装 Go
- 在 WSL 中移动和配置项目
- 在 GoLand 中配置 WSL 和 Go SDK
- 验证配置
1. 安装 WSL
首先,我们需要在 Windows 上安装 WSL。
-
启用 WSL 功能:
- 打开 PowerShell,以管理员身份运行以下命令:
wsl --install
- 该命令将自动启用 WSL 并安装 Ubuntu 作为默认发行版。
- 打开 PowerShell,以管理员身份运行以下命令:
-
重启计算机:
- 完成安装后,系统将提示重启计算机。按照提示重启。
-
设置 WSL:
- 重启后,启动 Ubuntu。你将被要求创建一个新的用户和密码。按照提示完成设置。
-
设置 WSL 2:
- 确保你的 WSL 版本是 WSL 2:
wsl --set-default-version 2
- 确保你的 WSL 版本是 WSL 2:
-
检查 WSL 安装:
-
在 PowerShell 中运行:
wsl --list --verbose
wsl -l -v
-
如果按照了docker,那么也会有一个wsl,但是是阉割版
-
-
确保你的 Linux 发行版处于运行状态,并且版本为 2。
-
2. 在 WSL 中安装 Go
在 WSL 中,我们需要安装 Go 编程语言。
-
进入 WSL 终端:
- 在 PowerShell 中运行:
wsl
- 或者直接从开始菜单中启动你的 Linux 发行版(如 Ubuntu)。
- 在 PowerShell 中运行:
-
更新包列表:
- 运行以下命令更新包列表:
sudo apt update
- 运行以下命令更新包列表:
-
下载 Go 安装包:
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz
-
解压安装包:
sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
-
设置环境变量:
- 编辑
.bashrc
文件:nano ~/.bashrc
- 添加以下内容到文件末尾:
export PATH=$PATH:/usr/local/go/bin
- 保存并关闭文件,然后运行:
source ~/.bashrc
- 编辑
-
验证安装:
- 运行以下命令确认安装:
go version
- 应该输出
go version go1.22.5 linux/amd64
。
- 运行以下命令确认安装:
3. 在 WSL 中移动和配置项目
将你的项目文件移动到 WSL 文件系统中,并配置 Go 环境。
-
创建项目目录:
- 在 WSL 终端中创建一个新的项目目录:
mkdir -p ~/go_projects/my_project
- 在 WSL 终端中创建一个新的项目目录:
-
移动项目文件:
-
打开 Windows 文件资源管理器,找到你的项目文件并复制。
-
在 WSL 终端中,将文件粘贴到新创建的目录中:
cp -r /mnt/c/Users/YourUsername/GoProjects/MyProject/* ~/go_projects/my_project/
或者在
\\wsl.localhost\Ubuntu\home
将项目拖放进去
为什么需要把项目放进wsl?因为如果不放进去,设置golang idea 的go sdk为wsl 的go sdk会报错,所以想要将项目改为linux项目
-
-
配置环境变量:
- 打开
~/.bashrc
或~/.profile
文件,添加以下内容:export GOPATH=$HOME/go export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
- 运行以下命令以应用更改:
source ~/.bashrc
- 打开
4. 在 GoLand 中配置 WSL 和 Go SDK
-
打开 GoLand 并导入项目:
- 启动 GoLand,选择
File
->Open
。 - 导航到
\\wsl$\Ubuntu\home\your_username\go_projects\my_project
并选择项目目录。
- 启动 GoLand,选择
-
添加 Go SDK:
- 在 GoLand 中,前往
File
->Settings
->Go
->Go SDK
。 - 点击右上角的
+
按钮,选择WSL
,并选择 Go 的安装路径(通常是/usr/local/go
)。jh@DESKTOP-K7CVTO9:~$ which go /usr/local/go/bin/go
- 在 GoLand 中,前往
-
设置项目结构:
- 确保在
File
->Settings
->Go
->GOPATH
中,设置正确的GOPATH
(通常是~/go
)。(可忽略)
- 确保在
5. 验证配置
- 打开 GoLand 终端:
- 在 GoLand 中,打开终端(
View
>Tool Windows
>Terminal
)。wsl.exe --distribution Ubuntu
-
确认终端类型:
- 确保终端显示的是 WSL 的提示符(例如
username@hostname
)。
- 确保终端显示的是 WSL 的提示符(例如
-
检查 Go 版本:
- 在 GoLand 的终端中运行:
go version
- 确保它显示的是 WSL 中的 Go 版本。
- 在 GoLand 的终端中运行:
-
配置Run Targets
附:期间坑比较多,需要注意如果Window已经安装了docker,那么也会有一个阉割版的wsl,需要重新再安装一个Ubuntu的wsl,并安装go
在设置sdk时候发现不能选择wsl,原因是项目是Window的而不是linux 于是将项目移入wsl中才可以正常设置sdk为wsl中的go
更多推荐
所有评论(0)