golang 多版本管理切换自由之wsl篇
日常环境开发中,golang的版本不可能都是同一个,一些太老的项目用的较旧的版本在用最新版本的golang是会出现编译报错
目前有几种方法进行,使用自带的版本 go install
、使用GVM (Go Version Manager)
等
这里主要介绍go install
go install
解析
go install 是官方原生的命令行工具,其主要用途有:
- 安装可执行程序:
你可以使用 go install 来编译并安装它。编译后的可执行文件会被放置在 $GOPATH/bin (环境变量$GOBIN) 目录下go install github.com/example/myapp@latest
- 安装库:
对于库来说,go install 会编译库代码,并将其放置在 $GOPATH/pkg 目录下,这样其他项目就可以通过导入路径来使用这个库
- 安装命令行工具
常用于安装命令行工具,这些工具可以是 Go 自带的工具,也可以是第三方工具
- 安装特定版本的程序或库
你可以指定版本来安装特定版本的程序或库
实操
使用go install
安装最新版本的golang
go install golang.org/dl/go1.23.2@latest
校验
- 无法使用
go1.23.2
命令
加环境变量访问GOPATH
下的可执行程序
vim ~/.bashrc
这里改的是针对用户级别的
[root] go env
# 查看GOPATH是在哪个目录
...
GOPATH='/root/go'
...
[root] vim ~/.bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# 把/root/go/bin加入可执行程序环境
export PATH=$PATH:/root/go/bin
使用source
命令刷新配置
[root] source ~/.bashrc
- 可以使用
go1.23.2
命令就进行下一步
下载
下载之后才能使用
[root] go1.23.2 download
Downloaded 0.0% ( 16384 / 73611540 bytes) ...
Downloaded 30.8% (22658944 / 73611540 bytes) ...
Downloaded 38.9% (28622640 / 73611540 bytes) ...
Downloaded 40.8% (29998880 / 73611540 bytes) ...
Downloaded 42.7% (31407936 / 73611540 bytes) ...
Downloaded 44.6% (32833328 / 73611540 bytes) ...
Downloaded 46.1% (33963808 / 73611540 bytes) ...
Downloaded 48.0% (35323776 / 73611540 bytes) ...
Downloaded 50.1% (36847408 / 73611540 bytes) ...
Downloaded 51.8% (38108960 / 73611540 bytes) ...
Downloaded 53.6% (39485312 / 73611540 bytes) ...
...
Downloaded 97.3% (71646848 / 73611540 bytes) ...
Downloaded 99.2% (73023136 / 73611540 bytes) ...
Downloaded 100.0% (73611540 / 73611540 bytes)
Unpacking /root/sdk/go1.23.2/go1.23.2.linux-amd64.tar.gz ...
Success. You may now run 'go1.23.2'
[root] go1.23.2 version
go version go1.23.2 linux/amd64