无法brew切换Go版本

anauzrmj  于 2022-12-16  发布在  Go
关注(0)|答案(1)|浏览(199)

我安装了Go版本1.13.1和1.12.9

$brew list --versions | grep go
go 1.13.1
go@1.12 1.12.9

但是我无法切换到1.12,一个错误表明我只安装了版本1.13.1,这与前面的清单相矛盾。

$brew switch go 1.12
Error: go does not have a version "1.12" in the Cellar.
go installed versions: 1.13.1

当我仔细查看go版本时(没有grep)

$brew list --versions go
go 1.13.1

所以我一定是在安装go 1.12的时候做错了什么,但是什么呢?我用了brew install go@1.12,我应该用另一种语法吗?

ne5o7dgx

ne5o7dgx1#

gogo@1.12作为两个名称不同的软件包安装,这意味着它们安装在不同的位置。/usr/local/Cellar/go/usr/local/Cellar/go@1.12
在这种情况下,应该使用brew link

brew unlink go

brew link go@1.12 --overwrite

更新1

更多关于brew switch的解释。brew switch <version>用于切换使用相同包名安装的版本。
例如,如果同时安装了go 1.13和1.13.1,则会将它们放入

  • /usr/local/Cellar/go/1.13
  • /usr/local/Cellar/go/1.13.1

在这种情况下,请使用brew switch

brew switch go 1.13
brew switch go 1.13.1

更新2

自Homebrew 2.6.0起,brew switch已被删除。
任何人仍然需要旧的brew switch,请使用以下点击,其中brew switch作为自定义子命令包含在内。

brew tap laggardkernel/tap
brew switch --help

相关问题