您的位置:首页 >Golang快速安装第三方包方法
发布于2026-02-09 阅读(0)
扫一扫,手机访问
Go 1.18+ 起 go get 不再安装命令行工具,仅用于添加依赖;安装工具须用 go install + 版本后缀(如 @latest),并确保 GOBIN 在 PATH 中,同时建议配置 GOPROXY 和 GOSUMDB 解决国内网络问题。

从 Go 1.18 开始,go get 不再支持直接安装命令行工具(比如 golint、mockgen),它只用于添加依赖到 go.mod。如果你运行 go get github.com/golang/mock/mockgen,只会把该模块加进 require,不会把 mockgen 二进制放到 $GOBIN 或 $GOPATH/bin。
真正想“安装工具”,得用 go install:
go install github.com/golang/mock/mockgen@latest
注意必须带版本后缀(如 @latest、@v1.6.0),否则报错:go install: version is required when current directory is not in a module。
go install 默认把编译好的可执行文件放进 $GOBIN;没设的话,会 fallback 到 $GOPATH/bin(而 $GOPATH 默认是 $HOME/go)。
go env GOBINGOBIN=/usr/local/bin go install github.com/cosmtrek/air@latest~/.zshrc 或 ~/.bashrc):export GOBIN=$HOME/bin,然后确保 $HOME/bin 在 $PATH 里没加进 $PATH 的话,即使安装成功,终端也找不到命令 —— 这是最常被忽略的一步。
国内直连 proxy.golang.org 或 sum.golang.org 经常超时或 403,表现为:
go install: github.com/xxx/yyy@latest: Get "https://proxy.golang.org/...": dial tcp xx.xx.xx.xx:443: i/o timeoutverifying github.com/xxx/yyy@v1.2.3: checksum mismatch解决方法(任选其一):
go env -w GOPROXY=https://goproxy.cn,directgo env -w GOSUMDB=offgo env -w GOPROXY=https://goproxy.cn,direct && go env -w GOSUMDB=off注意:设完后不用重启终端,但旧 shell 里已运行的 go 命令可能缓存了旧配置,建议新开终端验证:go env GOPROXY。
只有包含 main 函数、且入口文件在 package main 下的模块,才能通过 go install 编译成可执行文件。例如:
go install github.com/google/wire/cmd/wire@latest(路径含 /cmd/wire)go install github.com/google/wire@latest(这是库,没有 main)go install golang.org/x/tools/cmd/goimports@latest如果不确定一个项目是否提供命令,去看它的 GitHub README,或查源码里有没有 cmd/xxx 目录。盲目 go install 顶层路径,大概率失败。
上一篇:支付宝取消绑定邮箱方法详解
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9