我安装了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
,我应该用另一种语法吗?
1条答案
按热度按时间ne5o7dgx1#
go
和go@1.12
作为两个名称不同的软件包安装,这意味着它们安装在不同的位置。/usr/local/Cellar/go
和/usr/local/Cellar/go@1.12
。在这种情况下,应该使用
brew link
。更新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
。更新2
自Homebrew 2.6.0起,
brew switch
已被删除。任何人仍然需要旧的
brew switch
,请使用以下点击,其中brew switch
作为自定义子命令包含在内。