我正在学习 Go,我做了这个例子:http : //thenewstack.io/make-a-restful-json-api-go/ 来构建一个简单的 REST API。
我已经编译它并且一切正常,但所有源都在主包中。
现在我想在包中组织我的 .go 文件,所以我以这种方式将它们移动到一些文件夹中:
GOPATH\bin
GOPATH\pkg
GOPATH\src\pack1\Handlers.go
GOPATH\src\pack1\Logger.go
GOPATH\src\pack1\repo.go
GOPATH\src\pack1\Todo.go
GOPATH\src\router\Router.go
GOPATH\src\router\Routes.go
GOPATH\src\Main.go
Main.go 使用了所有的路由器包,所以我在导入部分放入:“./router”。Router.go 使用 pack1 包,所以在 Router.go 中我导入了“../pack1”。现在,如果我尝试“去构建 Main.go”,我会得到:
router\Router.go:6: imported and not used: "_/D_/GOPATH/src/pack1"
router\Router.go:14: undefined: Logger
和类似的错误,所以似乎我所做的 pack1 包的导入是错误的。当然,在属于 pack1 的所有文件中,我在标题中放置了“package pack1”定义。
我还读到 Go 中不建议使用相对导入,使用远程包(例如广告导入“github.com/myrepo/mypackage”)可能很有用。但我不想使用远程导入;我想马上推送我所有的文件。
你能帮我更好地理解在 Go 中的包之间进行本地导入的方法是什么吗?
开心每一天1111
喵喵时光机
相关分类