【发布时间】:2016-03-11 17:10:39
【问题描述】:
如果遵循 GoLang 文档的工作空间结构,则两个可执行包可能会共享相同的包名。
比如github上有两个包:
$ $GOPATH/src/github.com/alpha/import
$ $GOPATH/src/github.com/beta/import
首先安装来自用户alpha 的import 包:
$ go install github.com/alpha/import
二进制可执行文件现在在$GOPATH/bin 中可用,并命名为import。
然后安装来自用户beta 的第二个包:
$ go install github.com/beta/import
此安装/构建将使用来自用户 beta 的 import 二进制文件替换来自用户 alpha 的现有 import 二进制文件。
更好的命名约定可以避免这种冲突;但是,在使用第三方库时是否有解决此问题的标准做法?
【问题讨论】:
标签: go namespaces package