马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
利用 GVM 管理多版本 Go 情况
在本文中,我们将利用 gvm(Go Version Manager)工具管理当地多个 Go 语言版本。gvm 功能雷同于 Python 的 Anaconda,可以方便地切换不同版本的 Go 情况,非常得当需要多版本开发与测试的场景。
需要留意的是,gvm 在第一次安装 Go 时,需要终端情况中已经存在一个可用的 Go 语言版本,因为 gvm 需要依赖现有的 Go 情况来编译安装新的版本。为了满足这一需求,我们可以利用 macOS 的 Homebrew 先安装一个临时的 Go 版本,待 gvm 安装完成后,再将 Homebrew 安装的 Go 删除。
1. 利用 Homebrew 安装 Go
起首,我们需要通过 Homebrew 安装一个底子版本的 Go:
- # 安装 Go
- brew install go
- # 验证安装是否成功
- go version
- which go
复制代码 运行以上命令后,你应该可以看到当前安装的 Go 版本号以及 Go 可执行文件的路径。
2. 安装 GVM
接下来,我们安装 gvm 工具。gvm 会被安装到用户的主目次下(~/.gvm):
- # 安装 gvm
- bash < <(curl -sSL https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
- # 安装完成后,加载 gvm
- source ~/.gvm/scripts/gvm
复制代码 运行上述命令后,gvm 应该已经成功安装,可以通过以下命令验证:
3. 利用 GVM 安装 Go
现在我们可以利用 gvm 安装和管理多个 Go 版本。
检察可用的 Go 版本
gvm 会列出全部可用的 Go 版本,你可以选择此中一个版本进行安装。
安装特定版本的 Go
安装完成后,你可以通过以下命令检察已安装的版本:
删除 Homebrew 安装的 Go
由于 gvm 已经安装了 Go,现在可以删除通过 Homebrew 安装的临时 Go:
切换到某个版本的 Go
这会将 Go 的默认版本设置为 go1.20,后续每次打开终端时都会自动利用该版本。
验证安装
运行以上命令,确保 go 的版本和路径都指向 gvm 管理的版本。
4. 安装其他版本的 Go
如果需要安装其他版本的 Go,比方 go1.23.5,可以运行以下命令:
安装完成后,你可以随时通过 gvm use 切换版本,或者利用 gvm use go1.23.5 --default 将其设置为默认版本。
5. 在 VS Code 中利用 Go
在开发过程中,我们通常会利用 VS Code 作为 Go 语言的 IDE。为了支持 Go 的开发,你需要安装官方的 Go 插件:
- 打开 VS Code 的扩展市场(Extensions)。
- 搜刮并安装 Go 插件。
- 插件安装完成后,VS Code 会自动检测你的 Go 情况。
如果 VS Code 没有正确辨认你通过 gvm 安装的 Go 版本,可以参考以下步骤手动配置:
- 打开 VS Code 设置(Cmd + , 或 Ctrl + ,)。
- 搜刮 Go: GOROOT,并将其设置为 gvm 中的 Go 路径,比方:
在 VS Code 中调试情况变量
在 VS Code 的集成终端中,运行以下命令,确保它能够正确辨认 gvm 管理的 Go 版本:
如果 VS Code 的终端与外部终端行为不同等(比方无法正确辨认 GOROOT),可以在 VS Code 的设置中配置终端情况变量。
6. 情况变量及相干命令
在 Go 开发中,情况变量(如 GOPATH、GOROOT 等)非常重要,以下是一些常用的情况变量管理和调试命令:
检察当前 Go 情况变量
运行以下命令检察当前 Go 情况的全部配置:
你会看到雷同的输出:
- GO111MODULE="on"
- GOPATH="/Users/yourname/go"
- GOROOT="/Users/yourname/.gvm/gos/go1.20"
复制代码 检察特定情况变量
如果只想检察某个情况变量的值,可以运行:
- go env
- GOROOTgo env
- GOPATH
复制代码 设置 GOPATH
如果需要自界说 GOPATH,可以在 shell 配置文件(如 ~/.bashrc 或 ~/.zshrc)中添加以下内容:
- export GOPATH=$HOME/go
- export PATH=$GOPATH/bin:$PATH
复制代码 然后运行以下命令使配置见效:
- source ~/.bashrc # 如果使用 bash
- source ~/.zshrc # 如果使用 zsh
复制代码 查抄 Go 的可执行文件路径
这个命令会返回当前终端中利用的 go 的可执行文件路径(比方 ~/.gvm/gos/go1.20
/bin/go)。如果路径不正确,可以查抄是否存在多个 Go 版本冲突。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |