當使用golang開發一個網站時 , 通常是須要部署下靜態文件的資源 ,go只是提供接口 , 打包完的go二進制文件不包含靜態文件資源git
可是當作一個小型的應用時還要再部署靜態資源顯得比較麻煩 , 這個時候可使用packr這個包來把靜態資源直接打包進二進制裏github
包的github地址是 https://github.com/gobuffalo/packrgolang
使用的時候能夠直接在go.mod裏使用v2版本就能夠了 網站
go.modui
github.com/gobuffalo/packr/v2 v2.5.1blog
調用的時候使用import引入接口
import (
"github.com/gobuffalo/packr/v2"
)
具體方法能夠參照我這個 , 也能夠去看下文檔資源
//獲取文件內容,能夠打包到二進制
func FileGetContent(file string) string {
str := ""
box := packr.New("tmpl","../static")
content, err := box.FindString(file)
if err != nil {
return str
}
return content
}
重點是在最終打包build的時候 ,先使用packr2 build 如下 , 而後再去go build開發
packr2命令須要單獨下載文檔