采用go-bindata来打包资源文件为go源码文件
GitHub地址:https://github.com/go-bindata/go-bindata
1. 安装
go get -u github.com/go-bindata/go-bindata/...
...
是指编译安装go-bindata目录下的所有的main函数
2. 简单实用
# 打包config目录下所有文件
go-bindata config/
# 打包config.yaml 文件
go-bindata config.yaml
命令会生成一个 bindata.go
文件,我们项目中使用该文件即可,注意:默认生成的package为main
bindata.go
package bindata
// Asset 根据文件名读取文件内容的 []byte,出错返回 error
func Asset(name string) ([]byte, error) {
/*...*/}
// MustAsset 跟 Asset 的区别只在于出错不返回 error ,直接 panic
func MustAsset(name