【golang】安装库出错 cannot find package “github.com/xxx“ in any of

go安装库,出现最多的错误就是cannot find package xxx了,例如

go get -u github.com/hashicorp/hcl/hcl/printer
cannot find package “github.com/hashicorp/hcl/hcl/printer” in any of:

解决一:

首先打开链接 ,查看项目是否还存在?
github.com/hashicorp/hcl/hcl/printer
要是页面 404,尝试减少目录层级,github.com/hashicorp/hcl,能打开然后再下载
go get -u github.com/hashicorp/hcl

解决二:

打开命令行工具,执行go env,找到 GOPATH
go env
cd到 $GOPATH/src/xxx
再执行命令 git clone 库GIT地址,效果也是一样的
git clone github.com/hashicorp/hcl

解决三:

观察报错信息是否还缺少其他包,比如
cannot find package “github.com/go-delve/delve/service” in any of:
cannot find package “github.com/go-delve/delve/service/debugger” in any of:
cannot find package “github.com/go-delve/delve/service/rpc2” in any of:

那么需要这些关联库也逐个下载
go get -u github.com/go-delve/delve/service
go get -u github.com/go-delve/delve/service/debugger
go get -u github.com/go-delve/delve/service/rpc2

解决四:

或者设置代理试试,打开你的终端并执行(Go 1.13 及以上)
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

# macOS 或 Linux

export GO111MODULE=on
export GOPROXY=https://goproxy.cn

或者

echo "export GO111MODULE=on" >> ~/.profile
echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
source ~/.profile

Windows,
打开你的 PowerShell 并执行

$env:GO111MODULE = "on"
$env:GOPROXY = "https://goproxy.cn"


————————————————
版权声明:本文为CSDN博主「一筐大白菜啊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sphinx1122/article/details/117395530

原文地址:https://www.cnblogs.com/netflix/p/14960750.html