一台主机安装多个golang 运行环境
- 本环境 windows10 为 基础 mac linux也可以按照此方法操作
背景
开发不同的运维工具会用到不同版本的golang,但是开发者不能一直进行重装来处理 ,因此 需要一个工具进行golang版本的管理
go管理工具介绍
gvm (Go Version Manager):
一个流行的 Go 版本管理工具,可以使用它来安装多个版本的 Go,并在它们之间切换。它是类似于 nvm (Node Version Manager) 的 Go 版本。[https://github.com/moovweb/gvm\]
asdf:
是一个可扩展的版本管理器,使用插件系统来支持许多编程语言和工具的版本管理,其中包括 Go。[https://asdf-vm.com/\]
goenv:
提供了对 Go 版本的精准控制,并能简单地在不同的 Go 版本之间切换。类似于 Ruby 的 rbenv 工具。[https://github.com/syndbg/goenv\]
Gobrew:
使用非常简单的命令行接口,用户可以安装、卸载、切换 Go 的不同版本。[https://github.com/cryptojuice/gobrew\]
g:
g 是一个轻量级的 Go 版本管理器,它允许你在系统上快速切换不同的 Go 版本。[https://github.com/stefanmaric/g\]
goget:
是 go get 命令的增强版本,用于下载和更新依赖包,但现在大多数场合建议使用 Go 模块。
我们这里主要介绍的是 go get 的方式
zip包方法-手动安装
这里不推荐 因为我使用的是goland 我安装两套go环境后,指定 sdk 目录 goland 识别不到,技术大佬可以尝试下
链接: https://www.cnblogs.com/rainbow-tan/p/17735258.html
go get 管理方法
- 前提是我们需要提前安装一个常用的 go 版本,我这里常用的是 go1.19
- 运行 go install 命令来下载和安装 go1.20 的特定版本:
shell
go install golang.org/dl/go1.20@latest
- 使用 go1.20 dowmload 命令进行下载
- windows 会默认下载到 %USERPROFILE%\sdk下 这里实在C 盘;unix可能会下载到 ~/go 下
- 如果是windows 的话 我做了一个链接,因为我配置了 GOSDK的变量(值是你要下载其他版本go的总目录),不生效,因此 我先做了链接
shell
1. 先创建一个用于保存其他 go 版本的目录
2. 使用链接命令链接过去
mklink /D C:\Users\tianwenxiang\sdk E:\Gosdk
3. 下载 go 版本
go1.20 download
4. 下载完成后执行
go1.20 version
之后通过版本号指定使用其他版本的go 命令
这个也是可以被goland 识别的 sdk
使用goland 方法
这里不过多介绍 网上都有方案