我正在尝试在 Go 中创建和使用自定义包。这可能是非常明显的事情,但我找不到太多关于此的信息。基本上,我将这两个文件放在同一个文件夹中:
mylib.go
package mylib
type SomeType struct {
}
主程序
package main
import (
"mylib"
)
func main() {
}
当我尝试 go run main.go
时,出现此错误:
main.go:4:2: import "mylib": cannot find package
我尝试先运行 go build mylib.go
但它似乎没有做任何事情(没有生成文件,没有错误消息)。那么知道我该怎么做吗?
原文由 laurent 发布,翻译遵循 CC BY-SA 4.0 许可协议
首先,一定要阅读并理解 “如何编写 Go 代码” 文档。
实际答案取决于您的“自定义包”的性质。
如果它打算用于一般用途,请考虑使用所谓的 “Github 代码布局” 。基本上,您使您的库成为一个单独的
go get
表项目。如果您的图书馆供内部使用,您可以这样做:
展示:
现在,在顶级
main.go
中,您可以import "myproject/mylib"
并且它可以正常工作。