美文网首页
air实现go应用实时热重载

air实现go应用实时热重载

作者: 谁把月亮涂黑啦 | 来源:发表于2020-08-28 14:46 被阅读0次

    今天要介绍一个比较好用的go应用的自动热加载工具: air,有了它,再也不用手动 Ctrl+C + go run了,它还有以下特性:

    • Colorful log output
    • Customize build or binary command
    • Support excluding subdirectories
    • Allow watching new directories after Air started
    • Better building process

    安装

    go get -u github.com/cosmtrek/air
    

    然后在项目根目录新建 .air.toml文件
    我的是windows机器,其他系统可以参考github原配置文件

    # 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.
    # go build -o ./tmp/main .
    cmd = "go build -o ./tmp/main ."
    # Binary file yields from `cmd`.
    bin = "tmp/main"
    # Customize binary.  APP_ENV=dev APP_USER=air ./tmp/main
    full_bin = "./tmp/main"
    # Watch these filename extensions.
    include_ext = ["go", "tpl", "tmpl", "html"]
    # Ignore these filename extensions or directories.
    exclude_dir = ["assets", "tmp", "vendor"]
    # Watch these directories if you specified.
    include_dir = []
    # Exclude files.
    exclude_file = []
    # This log file places in your tmp_dir.
    log = "air.log"
    # It's not necessary to trigger build each time file changes if it's too frequent.
    delay = 1000 # ms
    # Stop running old binary when build errors occur.
    stop_on_error = true
    # Send Interrupt signal before killing process (windows does not support this feature)
    send_interrupt = false
    # Delay after sending Interrupt signal
    kill_delay = 500 # ms
    
    [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
    

    到此就完成了配置,终端输入 air 就可以启动了,gin框架搭配air很适合,其他框架还没有试过

    相关文章

      网友评论

          本文标题:air实现go应用实时热重载

          本文链接:https://www.haomeiwen.com/subject/dujlsktx.html