我是Golang的新手.据我所知,当你想创建一个新的Go项目时,我们只需要创建一个目录.然后我们将环境变量GOPATH指向此目录.在这个目录中,我们创建了三个子目录pkg,src和bin.然后,当我们执行时go get ...,第三方软件包将安装在pkg子目录中.稍后如果我想创建另一个Go项目,我创建一个名为project2的新目录并指向GOPATHproject2.此时go get ...将在pkgproject2 的子目录中下载第三方软件包.我的问题是,Go是否有一个中央存储库?如果没有,如果在两个不同的项目中使用相同的包,则将下载两次.真的吗?
Go 软件包没有中央存储库。Go 总是在 GOPATH 或 GOROOT 中寻找包。go get 只是使用 git 或 Mercurial 下载软件包。我建议您阅读 https://golang.org/doc/code.html 和https://peter.bourgon.org/go-best-practices-2016/#repository-struct
GOPATH 只是告诉 go 编译器在哪里搜索src,pkg目录。
| 归档时间: |
|
| 查看次数: |
1301 次 |
| 最近记录: |