goland+wsl配置过程
Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。
在没有云服务器、Mac电脑,不需要虚拟机图形界面的情况下,我们想使用类Unix系统,最好的解决方法就是WSL。
接下来我将简单介绍在Windows电脑中安装WSL,并配置Go环境连接Goland的过程:
1. 管理员身份运行PowerShell,键入 wsl --install 。
此步可能出现无法安装,考虑使用梯子或修改DNS继续后面的操作。
后面按提示输入用户名时可能报错:
Enter new UNIX username: 82182 adduser: Please enter a username matching the regular expression configured via the NAME_REGEX[_SYSTEM] configuration variable. Use the `--force-badname' option to relax this check or reconfigure NAME_REGEX.
经查阅符合正则表达式的用户名需要满足:
- 以小写字母开头
- 只能包含小写字母、连字符、数字和下划线
- 用户名的长度至少为1个字符
重新输入合法用户名和密码完成账号注册。
2. 配置Go语言环境。下载合适版本安装包并解压到/usr/local:
wget https://studygolang.com/dl/golang/go1.18.2.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.18.2.linux-amd64.tar.gz
在 GOPATH 路径下放 pkg、bin、src 三个文件夹,然后设置环境变量:(注意username路径根据自己的用户名修改)
mkdir -p /home/username/go/{pkg,bin,src} export GOPATH=/home/username/go export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
简单的测试:
mkdir $GOPATH/src/test -p cd $GOPATH/src/test vi test.go
写入简单的测试代码,
package main import "fmt" func main() { fmt.Println("Hello World!"); }
运行查看结果
cc86182@DESKTOP-K14GSQV:~/go/src/test$ go run test.go
Hello World!
问题备注:后续想进入wsl终端,在powershell键入 wsl 或 bash ,若出现报错(或在菜单中搜索wsl运行,出现闪退)
执行 wsl -l -v 查看到wsl默认配置成了docker-desktop-data,执行 wsl --setdefault Ubuntu 命令修改默认为Ubuntu解决问题。
3. 使用Goland配置连接WSL
首先尝试New Project,按照之前的GOROOT新建
报错Go SDK in WSL cannot be used for the Windows project。那么执行以下操作:
打开Goland,在File>Settings>Build,Execution,Deployment>Run Targets中新建WSL,配置如下图:
上面Add language runtime选择Go,完成后在Goland右上角Edit Configurations中新建Go build并保存,完成配置
以上GOROOT等配置因人而异,仅作参考,配置完成运行go代码成功。