合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## Air 热加载 **可以监控代码变化(go服务端改动)和端口变化(前端改动)** Air 是一个开发环境下的 Go Web 应用程序自动重新加载工具。当你对你的项目进行更改并保存时,它会自动重新构建和重新加载应用程序。Air 支持 Windows、macOS 和 Linux。 以下是 Air 的配置及使用说明: ### [](https://www.go-admin.pro/intro/advanced/air#%E5%AE%89%E8%A3%85-air)安装 Air 使用以下命令来安装 Air: ~~~undefined go get -u github.com/cosmtrek/air ~~~ ### [](https://www.go-admin.pro/intro/advanced/air#%E5%8F%AF%E8%83%BD%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98)可能遇到的问题 ***安装以后需要把air.exe配置到环境变量,如果不生效,执行go build 重新生成air.exe文件*** ### [](https://www.go-admin.pro/intro/advanced/air#%E5%88%9B%E5%BB%BA%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6)创建配置文件 在项目目录下创建一个`.air.toml`文件作为 Air 的配置文件。Air 的默认配置如下: ``` ~~~ root = "." testdata_dir = "testdata" tmp_dir = "tmp" [build] args_bin = [] bin = "main.exe server" cmd = "go build -o ./main.exe ." delay = 0 exclude_dir = ["assets", "tmp", "vendor", "testdata"] exclude_file = [] exclude_regex = ["_test.go"] exclude_unchanged = false follow_symlink = false full_bin = "" include_dir = [] include_ext = ["go", "tpl", "tmpl", "html"] include_file = [] kill_delay = "0s" log = "build-errors.log" poll = false poll_interval = 0 rerun = false rerun_delay = 500 send_interrupt = false stop_on_error = false [color] app = "" build = "yellow" main = "magenta" runner = "green" watcher = "cyan" [log] main_only = false time = false [misc] clean_on_exit = false [screen] clear_on_rebuild = false keep_scroll = true ~~~ ``` ### [](https://www.go-admin.pro/intro/advanced/air#%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E8%AF%B4%E6%98%8E)配置文件说明 * `root`: 根目录,默认为当前目录 * `tmp_dir`: 存放编译后的二进制文件的目录,默认为`./tmp` * `build_dir`: 存放编译后的二进制文件的目录,默认为`./tmp` * `app_port`: 应用程序的端口号,默认为`8080` * `log_prefix`: 日志前缀,默认为`[AIR]` * `log_time_format`: 日志时间格式,默认为`2006-01-02 15:04:05` * `log_output`: 日志输出方式,默认为`stdout` * `[[watcher]]`: 监听文件改动的配置 * `name`: 监听配置的名称,默认为`all` * `paths`: 监听的目录列表,默认为当前目录 * `[run]`: 应用程序运行配置 * `watcher`: 监听文件改动的配置名称,默认为`all` * `listener`: 监听的 IP 地址,默认为`127.0.0.1` * `port`: 应用程序的端口号,默认为`8080` * `env`: 运行应用程序的环境变量,默认为空 * `args`: 运行应用程序的参数,默认为空 ### [](https://www.go-admin.pro/intro/advanced/air#%E4%BD%BF%E7%94%A8-air)使用 Air 配置好`.air.toml`后,使用以下命令启动 Air: air -c .air.toml 其他命令: ``` ~~~ 启动: go run main.go server -c config\settings.dev.yml 启动air : air -c .air.toml air --build.cmd "go build -o server main.go" --build.bin "./server" air --build.cmd "go run main.go server -c config\settings.dev.yml" --build.bin "" 打包win : go build -o ./gomain.exe ~~~ ``` 在控制台输出以下信息,说明 Air 启动成功: ![](https://img.kancloud.cn/55/9c/559cb93548e3e34836942160f20ad9ae_988x463.png) 现在,当你对应用程序的代码进行更改并保存时,Air 会自动重新构建和重新加载应用程序,你可以在浏览器中刷新页面以查看更改。