Beego:模块的路由问题

如果我使用模块,而 GOPATH 旧方法完美运行,路由对我来说根本不起作用。我是golang的新手,如果我做错了什么,请纠正我。
我一直在尝试使用 bee 创建 API 项目,但我发现所有新项目都必须使用 go 1.11 中发布的模块方法。我使用bee api api-name命令来搭建新项目。它出现在 GOPATH 中。我将它从 GOPATH 路径移到另一个目录。然后我做了go mod init mod,然后我能够运行bee run并且 API 已成功启动,但路由不起作用。我做了一些比较,发现该commentsRouter文件没有生成。我做错了什么?

我试着做set GO111MODULE=on然后go get -u github.com/beego/bee,但这也没有帮助。现在我什至不能运行bee API,我明白了 发生了0004 Failed to build the application: main.go:4:2: package api-name/routers is not in GOROOT (c:\go\src\api-name\routers)什么?我很困惑。官方 go 文档说我应该更喜欢新项目的模块方法,但我在文档中找不到任何关于如何在模块系统中搭建和使用 bee 的内容。


白猪掌柜的
浏览 202回答 2
2回答

蝴蝶刀刀

只是因为缺少文件commentsRouter_controllers.go。不知道beego在$gopath之外运行app时如何不生成文件routers/commentsRouter_controllers.go。那么我们就只能访问localhost/swagger了。任何其他路径(或路由)都返回 404。解决方案:不是一个好方法,但有效:将 $your_project 的源代码复制到 $gopath/srccd $gopath/src/$your_project > bee run (只用于生成文件commentsRouter_controllers.go) > stop running app复制文件 $gopath/src/$your_project/routers/commentsRouter_controllers.go 到 $your_project/routerscd $your_project > 蜜蜂运行祝你好运

一只甜甜圈

看起来最新的 Beego Bee 支持在 GOPATH 之外生成路由。检查一下。它现在对我有用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go