我的问题与 Go 应用程序的结构或方法有关。我有以下应用程序。root |- app | |- services | |- repositories | |- handlers | |- commands |- go.mod |- main.go命令包中的 Go 文件是独立工作的。其余软件包适用于 Web 应用程序。我在 main.go 中启动了一个 HTTP Web 服务器所以,我想在 crontab 的命令包中运行 Go 文件。但据我所知,我会将这些整个包构建到一个二进制文件中。我的问题是如何在 crontab 中独立运行命令包中的 Go 文件?我认为我应该将它们分成 2 个应用程序,例如“web 应用程序”和“命令应用程序”,但实际上它们是相互关联的,我不想以不同的方式管理 2 个应用程序。我可以在 crontab 中使用命令 Go 文件,另一方面在 main.go 中启动 HTTP Web 服务器吗?
1 回答
慕田峪9158850
TA贡献1794条经验 获得超8个赞
没有理由不能将您的 Web 应用程序模块中的包导入到另一个模块中,但是如果您想将它们放在一起,您可以做一些很常见的事情,并main在特定目录中添加额外的包,提供类似的目录结构这个:
root
|- app
| |-services
| |-...
|- cmd
| |- tools
| | |- main.go
|- main.go
您可以通过运行来构建/安装您的 CLI 二进制文件,go build ./cmd/tools或者go install ./cmd/tools
- 1 回答
- 0 关注
- 116 浏览
添加回答
举报
0/150
提交
取消
