当前位置: > > > > 强制重新下载/完全干净的环境
来源:stackoverflow
2024-04-22 17:00:36
0浏览
收藏
对于一个Golang开发者来说,牢固扎实的基础是十分重要的,就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《强制重新下载/完全干净的环境》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!
问题内容
首先,我没有 go 经验,我只是想从 github 构建一个项目。
我的问题:当我在克隆的 go 项目中使用 go build
时,我收到一堆如下错误:
transform.go:28:2: cannot find package "github.com/disintegration/imaging" in any of: /usr/lib/go/src/github.com/disintegration/imaging (from $goroot) /home/marcus/go/src/github.com/disintegration/imaging (from $gopath) imageproxy.go:34:2: cannot find package "github.com/gregjones/httpcache" in any of: /usr/lib/go/src/github.com/gregjones/httpcache (from $goroot) /home/marcus/go/src/github.com/gregjones/httpcache (from $gopath) transform.go:29:2: cannot find package "github.com/muesli/smartcrop" in any of: /usr/lib/go/src/github.com/muesli/smartcrop (from $goroot) /home/marcus/go/src/github.com/muesli/smartcrop (from $gopath)
发生了什么:我破坏了一切,因为我开始删除随机目录,希望解决我遇到的另一个问题。我删除了 ~/go
目录和 ~/.cache/go-build
目录。
我尝试过的:到目前为止,除了导致问题的删除之外,我还尝试了 go clean -cache -modcache
;添加 -r
标志会产生与上面相同的错误。 go build -a
也会产生相同的错误。我还尝试使用 pacman -s go
重新安装 go。
我的 go env
是:
GOARCH="amd64" GOBIN="" GOCACHE="/home/marcus/.cache/go-build" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOOS="linux" GOPATH="/home/marcus/go" GOPROXY="" GORACE="" GOROOT="/usr/lib/go" GOTMPDIR="" GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64" GCCGO="gccgo" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build315222728=/tmp/go-build -gno-record-gcc-switches"
我知道我做了一些意想不到的事情,但我很惊讶 go 在这里陷入困境。我怎样才能让 go 意识到这些包不存在并且它应该通过下载它们来修复这个问题?或者,我如何清理我的环境以删除仍然存在的任何使 go 认为包应该仍然存在的工件?
解决方案
阅读完回复评论后,我偶然发现了 go mod verify
命令,它似乎已经解决了我的问题。
终于介绍完啦!小伙伴们,这篇关于《强制重新下载/完全干净的环境》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~公众号也会发布Golang相关知识,快来关注吧!