如何使用air自动重载代码

Air能够实时监听项目的代码,在代码发生更变之后自动重新编译并执行

安装Air(windows)

(1)、在https://github.com/cosmtrek/air/releases处可以下载Air,放其入GO的安装目录下的bin目录,重命名为air.exe

(2)、在windows命令窗口下,也可以使用curl -fLo air.exe https://git.io/windows_air命令来安装Air(访问外网,可启用GO Module, 设置Go Proxy进行加速)

安装后,我们可以在GoLand内置的命令行终端使用air -v命令检查是否安装成功:

Go

使用并测试Air

通过air命令启用Air

Go

运行如下代码:

package main

import (
    "fmt"
    "net/http"
)

func handlerFunc(w http.ResponseWriter, r *http.Request) {

    fmt.Fprint(w, "<h1>Air自动重载<h1>")
}

func main(){
    http.HandleFunc("/", handlerFunc)
    http.ListenAndServe(":3030", nil)
}

浏览器中访问localhost:3030/ 显示

Go

修改代码

package main

import (
    "fmt"
    "net/http"
)

func handlerFunc(w http.ResponseWriter, r *http.Request) {

    fmt.Fprint(w, "<h1>Air自动重载<h1>")
}

func main(){
    http.HandleFunc("/", handlerFunc)
    http.ListenAndServe(":3000", nil)
}

分别访问localhost:3030/localhost:3000/ ,效果如下:

Go

Go

代码版本

使用命令查看文件状态:

$ git status

如何使用air自动重载代码

不难发现在项目根目录中出现 tmp 目录,该目录是Air编译文件的存放地。我们需要设置版本控制器将tmp目录排除在外。

在根目录中新建一个.gitignore文件,该文件指示 Git 在您进行提交时要忽略哪些文件和目录。创建后,将tmp目录添加到.gitignore文件:

如何使用air自动重载代码

此时,我们再使用命令查看文件状态就能发现,tmp目录被排除在外:

如何使用air自动重载代码

以上便是Air自动重载在GO项目中的使用。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!