1. Air实时加载

    本章我们要介绍一个神器——Air能够实时监听项目的代码文件,在代码发生变更之后自动重新编译并执行,大大提高gin框架项目的开发效率。

    之前使用Python编写Web项目的时候,常见的Flask或Django框架都是支持实时加载的,你修改了项目代码之后,程序能够自动重新加载并执行(live-reload),这在日常的开发阶段是十分方便的。

    在使用Go语言的gin框架在本地做开发调试的时候,经常需要在变更代码之后频繁的按下Ctrl+C停止程序并重新编译再执行,这样就不是很方便。

    • 彩色日志输出
    • 自定义构建或二进制命令
    • 启动后支持监听新目录
    • 更好的构建过程

    Go

    这也是最经典的安装方式:

    MacOS

    Linux

    1. curl -fLo air https://git.io/linux_air

    Windows

    Dcoker

    1. docker run -it --rm \
    2. -w "<PROJECT>" \
    3. -e "air_wd=<PROJECT>" \
    4. -v $(pwd):<PROJECT> \
    5. -p <PORT>:<APP SERVER PORT> \
    6. cosmtrek/air

    然后按照下面的方式在docker中运行你的项目:

    1. docker run -it --rm \
    2. -v $(pwd):/go/src/github.com/cosmtrek/hub \
    3. -p 9090:9090 \
    4. cosmtrek/air

    为了敲命令更简单更方便,你应该把alias air='~/.air'加到你的.bashrc或中。

    最简单的用法就是直接执行下面的命令:

    1. # 首先在当前目录下查找 `.air.conf`配置文件,如果找不到就使用默认的
    2. air -c .air.conf

    推荐的使用方法是:

    1. # 1. 在当前目录创建一个新的配置文件.air.conf
    2. touch .air.conf
    3. # 2. 复制 `air.conf.example` 中的内容到这个文件,然后根据你的需要去修改它
    4. air

    air_example.conf示例

    完整的air_example.conf示例配置如下,可以根据自己的需要修改。