我正在用 Go 构建一个 Web 应用程序,作为其中的一部分,我定义了几个中间件函数。现在他们都住在“我的/中间件”包中。这个命名空间被我定义的所有不同函数变得非常混乱,所以我决定把它们都放在它们自己的子目录中,例如“my/middleware/gzip”。当我这样做时,我收到错误:no buildable Go source files my/middleware我不希望所有这些函数都在同一个命名空间中,但似乎我唯一的选择是在 my/middleware 目录中创建一个占位符 .go 文件,其中包含一个空的 init 函数或其他东西。这听起来很糟糕,所以当父包中没有任何共享/通用代码时,我想就如何实现我的目标对类似的包进行分组提出建议。
1 回答
至尊宝的传说
TA贡献1789条经验 获得超10个赞
通过将文件拆分到不同的子文件夹中,您实际上做出了正确的决定。它与此处所做的没有什么不同 https://golang.org/pkg/compress/ 这允许您的框架的客户端仅获取他们需要的内容。这个想法是为了避免依赖膨胀。Go 就是精益求精。您收到的错误是因为您尝试构建一个不存在的包。将该文件夹视为一种逻辑分组机制,您需要单独构建子文件夹给出的包。
- 1 回答
- 0 关注
- 146 浏览
添加回答
举报
0/150
提交
取消