欢迎访问宙启技术站
智能推送

go中自动重载工具的安装方法

发布时间:2023-05-14 18:16:47

go语言自动重载工具可以自动监听文件变化,在文件改变时重新编译和运行项目。这种工具可以节省我们手动编译和运行的时间,提高开发效率。本文介绍如何安装常用的go自动重载工具gin和air。

#### 1. gin

gin是一个基于gin框架开发的自动重载工具。安装gin需先安装gin框架,可以使用go的包管理工具go mod进行快速安装。

首先创建一个go mod项目:

mkdir test
cd test
go mod init test

然后安装gin框架:

go get -u github.com/gin-gonic/gin

添加gin的自动重载功能,需要使用gin的autotls中间件。安装autotls中间件:

go get -u github.com/gin-gonic/autotls

安装完成后,创建一个main.go文件并编写代码:

package main

import (
	"github.com/gin-gonic/autotls"
	"github.com/gin-gonic/gin"
)

func main() {
	r := gin.Default()
	r.GET("/", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "Hello Gin",
		})
	})
	// Listen and serve on HTTPS (automatically using certificates from Let's Encrypt)
	r.Run(autotls.DefaultAutoTLSConfig().Addr)
}

接下来运行gin:

gin run

gin会启动一个web服务器,自动重载功能已经生效。修改main.go文件并保存,可以看到gin自动重新编译并运行项目。

#### 2. air

air是另一个基于go语言的自动重载工具,可以通过air.toml配置文件对项目进行配置。安装air:

go get -u github.com/cosmtrek/air

使用air需要创建一个air.toml配置文件。创建一个go mod项目:

mkdir test
cd test
go mod init test

在test目录下创建一个main.go文件:

package main

import "fmt"

func main() {
	fmt.Println("Hello, Air!")
}

创建air.toml文件:

[build]
cmd = "go build -o ./tmp/main.exe main.go"
watch_path = "."
output = "../tmp/main.exe"
error_action = "alert"

[run]
exe = "../tmp/main.exe"

运行air:

air

air会自动实时监听相关文件的变化,并自动重启程序。修改main.go文件并保存,可以看到air自动重新编译并运行项目。

以上是gin和air两个常用的go自动重载工具的安装和使用方法。可以根据需求选择适合自己的自动重载工具,提高go开发效率。