为了简化部署和减少出错的几率,将前端文件打包到可执行文件中,最终程序发布之后只有一个可执行文件

1. 安装

...
  1. go get github.com/go-bindata/go-bindata/...
  2. go get github.com/elazarl/go-bindata-assetfs/...
  3. # go版本>=1.17 使用intsall方式
  4. go install -a -v github.com/go-bindata/go-bindata/...@latest
  5. go install -a -v github.com/elazarl/go-bindata-assetfs/...@latest
GOPATH/bin

参考各自系统环境变量配置即可

3. 压缩静态文件 到 asset目录

powershellcmd
  1. # 开发环境,并非真实将所有文件编译,修改静态文件可以及时生效
  2. go-bindata-assetfs -debug -o=assets/bindata.go -pkg=assets static/... view/... # 多个
  3. go-bindata-assetfs -debug -o=assets/bindata.go -pkg=assets assets/...
  4. # 正式环境,修改静态文件后需要重新编译
  5. go-bindata-assetfs -o=assets/bindata.go -pkg=assets assets/...
-debug

参考文章

Go | Go 语言打包静态文件以及如何与Gin一起使用Go-bindata
https://www.jianshu.com/p/a7f5885679ef

[golang]Go内嵌静态资源go-bindata的安装及使用
https://www.cnblogs.com/landv/p/11577213.html