是否可以使用"可捕获"的cli-package( package main
),但是二进制以其他名称安装?
例如有一个存储库github.com/exaring/foo-cli
但是go get github.com/foo/foo-cli
将安装一个称为foo
(不是foo-cli
)的二进制文件?
重点是具有表达的存储库名称,但易于键入可执行文件。
如果您对运行go build
而不是go get
的用户很好,则可以这样做:
go build -o foo github.com/foo/foo-cli
否则,您可以将所有CLI代码保留在foo-cli
中,并将main
功能放入foo
中。