go get命令安装的包路径在哪?Homebrew安装Go的相关疑问
解决Go包安装位置及可执行文件查找问题
这问题我之前也碰到过,用Homebrew装Go后没手动设$GOPATH确实容易搞不清路径,给你一步步梳理:
先确认实际的GOPATH路径:
即使你没手动定义$GOPATH环境变量,Go本身会有默认值。直接在终端运行:go env GOPATH用Homebrew安装的Go,默认GOPATH一般是
~/go(也就是你主目录下的go文件夹),这条命令会给出最准确的路径。找到可执行文件的位置:
通过go get安装的可执行文件,默认会放在$GOPATH/bin目录下,对应到实际路径就是上面命令输出的路径加上/bin,比如~/go/bin。你可以直接进入这个目录查看,或者用命令:ls $(go env GOPATH)/bin就能看到你安装的可执行文件了。
让可执行文件能直接运行:
如果想在终端任意位置直接调用这些可执行文件,把$GOPATH/bin加到你的PATH环境变量里就行:- 打开你的Shell配置文件(比如
~/.zshrc或~/.bashrc,取决于你用的Shell) - 添加一行:
export PATH="$PATH:$(go env GOPATH)/bin" - 保存后,在终端运行
source ~/.zshrc(对应你的配置文件)或者重启终端,之后就能直接输入可执行文件名运行了。
- 打开你的Shell配置文件(比如
补充说明模块时代的变化:
现在Go已经默认使用模块(Go Modules),go get主要用于添加项目依赖,但如果安装的是带有可执行文件的包,它还是会把可执行文件放到$GOPATH/bin里。而包的源代码/模块缓存则会存在$GOPATH/pkg/mod目录下,这个一般不用手动去操作。
内容的提问来源于stack exchange,提问作者Liron Yahdav
相关产品推荐
相关产品推荐

