站长资源脚本专栏

goland服务热重启的配置文件

整理:jimmy2024/12/29浏览2
简介开发web api或web项目,修改源码后,无需手动重启即可查看效果,使用air即可实现。安装air:go get -v -u github.com/cosmtrek/air(或下载所有源码后,go build,得到air.exe,拷贝到$goroot/bin目录)在项目目录下,创建.air.c

开发web api或web项目,修改源码后,无需手动重启即可查看效果,使用air即可实现。

安装air:go get -v -u github.com/cosmtrek/air(或下载所有源码后,go build,得到air.exe,拷贝到$goroot/bin目录)

在项目目录下,创建.air.config文件,修改[build]中的cmd配置,设置为goland编译程序的命令行命令:

cmd = "go build -o ./tmp/xxx-demo.exe ./main.go"

最终配置文件如下:

# Config file for [Air](https://github.com/cosmtrek/air) in TOML format
 
# Working directory
# . or absolute path, please note that the directories following must be under root.
root = "."
tmp_dir = "tmp"
 
[build]
# Just plain old shell command. You could use `make` as well.
cmd = "go build -o ./tmp/xxx-demo.exe ./main.go"
# Binary file yields from `cmd`.
bin = "tmp/xxx-demo.exe"
# Customize binary.
full_bin = "APP_ENV=dev APP_USER=air ./tmp/main"
# Watch these filename extensions.
include_ext = ["go", "tpl", "tmpl", "html"]
# Ignore these filename extensions or directories.
exclude_dir = ["assets", "tmp", "vendor", "frontend/node_modules"]
# Watch these directories if you specified.
include_dir = []
# Exclude files.
exclude_file = []
# It's not necessary to trigger build each time file changes if it's too frequent.
delay = 1000 # ms
# Stop to run old binary when build errors occur.
stop_on_error = true
# This log file places in your tmp_dir.
log = "air_errors.log"
 
[log]
# Show log time
time = false
 
[color]
# Customize each part's color. If no color found, use the raw app log.
main = "magenta"
watcher = "cyan"
build = "yellow"
runner = "green"
 
[misc]
# Delete tmp directory on exit
clean_on_exit = true

goland中打开项目,在Terminal中运行air命令,即可自动监控项目代码修改,自动热启动服务,方便开发调试。