使用未设置 GOPATH 的模块时,go 将导入放在哪里?



我正在考虑将工作中的项目转换为模块。我的理解是,它应该使部署变得更加容易,因为$GOPATH不必正确设置。

在我现有的项目中,我运行了go mod init <project path>,并签入了go.modgo.sum。作为测试,我打开了一个新的终端,unset GOPATH,将我的项目克隆到/tmp,go build中,一切都很好,但它给我留下了问题。我希望我的导入被下载到供应商文件夹中,但没有下载。

当没有设置$GOPATH时,go 模块将它必须go get的包放在哪里?

从模块帮助:

使用模块时,不再使用 GOPATH 解析导入。但是,它仍然用于存储下载的源代码(在GOPATH/pkg/mod中(和编译的命令(在GOPATH/bin中(。

因此,在您的情况下,如果未设置 GOPATH,它将使用默认的 GOPATH ($HOME/go/(,从而将缓存的导入存储在:$HOME/go/pkg/mod

相关内容

  • 没有找到相关文章

最新更新