最近在学习Golang
,每次修改代码之后都需要重新build
,Go
目前没有内置代码热更新的工具,找了一下找到了第三方类库fresh
,在开发的时候使用起来炒鸡方便的。
go get github.com/pilu/fresh
进入项目根目录
cd $GOPATH/src/fresh_test
启动fresh
fresh
这时控制台就开始编译打包执行了,注意控制台返回的信息,能知道项目的编译错误和日志,最后会有访问 url,
项目go
文件有新增或修改,fresh
都会智能 reload
。
main.go
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r := gin.Default()
r.GET("/hello", func(c *gin.Context) {
c.String(http.StatusOK,"Hello Fresh!")
})
r.Run()
}
fresh
启动之后,新开一个窗口用curl
测试一下
[fuzqing@localhost ~]$ curl -XGET http://localhost:8080/hello
Hello Fresh!
修改一下main.go
:
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r := gin.Default()
r.GET("/hello", func(c *gin.Context) {
c.String(http.StatusOK,"Hello Fresh!\nReload")
})
r.Run()
}
项目go
文件有新增或修改,fresh
都会智能 reload
[fuzqing@localhost ~]$ curl -XGET http://localhost:8080/hello
Hello Fresh!
Reload
END~
原文:https://www.cnblogs.com/ExMan/p/14622272.html