代码之家  ›  专栏  ›  技术社区  ›  Corey Ogburn

当使用没有GOPATH设置的模块时,导入放在哪里?

  •  2
  • Corey Ogburn  · 技术社区  · 6 年前

    我在玩弄把工作中的一个项目转换成一个模块。我的理解是,它应该使部署更加容易,因为$GOPATH不必正确设置。

    在我现有的项目中 go mod init <project path> ,并签入 go.mod go.sum . 作为测试,我打开了一个新的终端, unset GOPATH go build ,一切都很顺利,但这给我留下了疑问。我希望我的导入被下载到一个供应商文件夹,但什么也没有。

    go get 当没有设置$GOPATH时?

    1 回复  |  直到 6 年前
        1
  •  3
  •   nijm    6 年前

    modules help :

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

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

    推荐文章