七叶笔记 » golang编程 » 写 Go 项目有两件很烦的事情?本文讨论其中之一

写 Go 项目有两件很烦的事情?本文讨论其中之一

go lang 项目有两件很烦的事情:一件是错误处理时连绵不绝的「if err != nil」,另一件是作为编译型语言,代码修改后不能实时看到效果,

借助一些工具可以实现文件修改后自动编译重启,比如:

  • Linux 环境: inotify-tools[1] Golang Automatic Reloads[2]
  • Mac 环境: fswatch[3]

不过常见的工具要么不跨平台,要么操作复杂,好在我发现了一个 facebook 出品的神器: watchman[4] ,不仅跨平台,而且操作简单,你只要写个脚本对接上就行了,当项目代码改变时,它会自动调用你的脚本。

  1. watchman watch[5] /path/to/your/ project
  2. watchman — trigger[6] /path/to/your/project -p ‘\. Go $’ — /path/to/your/ script

注意:如果遇到问题可以查日志「/usr/local/ var /run/watchman/*-state/log」

注意:如果你的编辑器有自动保存之类的功能,务必记得关闭它,比如 vscode:

自动保存

除了 watch 之外,还有一些别的选择,比如 air[7] 也不错,这里有一篇介绍文章: Go开发过程中总是要停下来编译:用它解决你的烦恼,快乐编程

参考资料

[1]

inotify-tools:

[2]

Golang Automatic Reloads:

[3]

fswatch:

[4]

watchman:

[5]

watch:

[6]

trigger:

[7]

air:

相关文章