安装

go get -u github.com/jteeuwen/go-bindata/...

使用

在代码的第一行写:
//go:generate go-bindata -o=staticFile.go -pkg=packfile -tags=packfile ../resource/... ../config.yaml ../migrate/...
migrate这些目录需要在部署时放置在main程序二进制文件所在目录

//go:build packfile
// +build packfilepackage packfileimport ("fmt""io/ioutil""os""path/filepath""strings"
)//go:generate go-bindata -o=staticFile.go -pkg=packfile -tags=packfile ../resource/... ../config.yaml ../migrate/...func writeFile(path string, data []byte) {// 如果文件夹不存在,预先创建文件夹if lastSeparator := strings.LastIndex(path, "/"); lastSeparator != -1 {dirPath := path[:lastSeparator]if _, err := os.Stat(dirPath); err != nil && os.IsNotExist(err) {os.MkdirAll(dirPath, os.ModePerm)}}// 已存在的文件,不应该覆盖重写,可能在前端更改了配置文件等if _, err := os.Stat(path); os.IsNotExist(err) {if err2 := ioutil.WriteFile(path, data, os.ModePerm); err2 != nil {fmt.Printf("Write file failed: %s\n", path)}} else {fmt.Printf("File exist, skip: %s\n", path)}
}func init() {for key := range _bindata {filePath, _ := filepath.Abs(strings.TrimPrefix(key, "."))data, err := Asset(key)if err != nil {// Asset was not found.fmt.Printf("Fail to find: %s\n", filePath)} else {writeFile(filePath, data)}}
}

或者:

参考链接:
https://www.cnblogs.com/landv/p/11577213.html
https://blog.csdn.net/weixin_39559097/article/details/110215894

Go gin内嵌静态资源go-bindata的安装及使用(GVA)相关推荐

  1. Razor Page Library:开发独立通用RPL(内嵌wwwroot资源文件夹)

    Demo路径:https://github.com/yanshengjie/RPL.Demo 1. Introduction Razor Page Library 是ASP.NET Core 2.1引 ...

  2. gin embed打包静态资源文件

    问题 在gin项目中如果单纯的只是实现api接口,那打包出来的是一个可执行文件.但如果项目中如果包含一些页面,则必定会引入一些css,jss,html文件.这样会使打包出来后会挂着对应的静态资源文件夹 ...

  3. golang将静态资源文件打包进二进制文件

    默认情况下,将项目打包成二进制的时候是不会加入静态资源文件的,因此在部署的时候还需要捎带上这些文件,比如,一些配置文件,图片,样式表等. 很多时候,这些静态文件是不需要变的,如果能一并加入到二进制文件 ...

  4. Golang Gin embed static 静态文件嵌入

    Golang Gin embed 静态文件嵌入 需求 改进思路 a). Gin文档 静态资源嵌入 方案 b). Gin 自带方法 代码 效果 c). 改进 1. 自带http库做法 2. 查看gin ...

  5. 记一次定位解决SpringBoot中内嵌Tomcat的Bug问题

    你知道的越多,不知道的就越多,业余的像一棵小草! 你来,我们一起精进!你不来,我和你的竞争对手一起精进! 编辑:业余草 segmentfault.com/a/1190000038760707 推荐:h ...

  6. Office中的Word无法关联内嵌EndNote

    在进行论文或者文章写作的过程中,插入参考文献是一个常规操作,在文献少的时候手动插入可以完成,但是参考文献多的手动插入是一个非常不明智的方法,这时候文献管理软件Endnote就是一个非常好的工具. 之前 ...

  7. jekyll静态博客提升访问速度:内嵌CSS,异步加载js,压缩HTML

    在谷歌搜索的功能速度(实验性)中推荐使用工具PageSpeed Insights查看我的网页访问速度情况:PageSpeed Insights 分数很低,只有33分. 优化建议的第一条是移除阻塞渲染的 ...

  8. 内嵌资源html,内嵌元素(HTML)

    内嵌内容 applet元素 过时的HTML Applet元素(applet)将Java applet嵌入文档中:不赞成使用此元素 embed元素 元素嵌入在文档中指定的点的外部内容.此内容由外部应用程 ...

  9. 11.6 如何使用内嵌资源类(ResourceRetriever)?

    获取类库(组件 或 装配件)的内嵌资源,一般返回的是字节流或文件流,在获取时还应该指定从哪个类库获取,如果未指定类库时,则类库是发起调用方法所在的类库. 所在组件:IBeamMDAACore.dll ...

最新文章

  1. 在java中实现滚动文字,通过线程实现文字在屏幕上不停滚动,为什么文字不显示啊,求指点...
  2. 酒店用机器学习,预测哪些客人会放鸽子
  3. TIOBE 12 月编程语言:Python 有望第四次成为年度语言!
  4. ADA4531 fA级静电放大器
  5. 首次看清体内所有癌症转移灶,深度学习方法立大功!中国留学生一作论文登《细胞》封面...
  6. codeforces570C
  7. TIME_WAIT和CLOSE_WAIT状态
  8. java如何获得键值_如何在java中取map中的键值 的两种方法
  9. 【转】深入剖析iLBC的丢包补偿技术(PLC)
  10. 查看容器ID以及如何在docker和宿主机之间复制文件
  11. 实现前后端数据交互方法汇总
  12. 在测试中发现错误,不要着急去改,静下心来,想一想错误的关联性( 错误展开确认 )。
  13. whitepages 配合调查_“你好,我是警察!请配合我们的调查......”_政务_澎湃新闻...
  14. 天锐绿盾技术大讲堂:解密审批流程管理
  15. 做SEO优化第三步:学习了解HTML基础知识
  16. 多屏信号服务器,多屏拼接控制器及多屏拼接方案【图文】
  17. Vue 接入高德地图
  18. Stripies POJ 1862
  19. ubuntu如何杀进程_ubuntu kill进程
  20. MDUKEY超级节点配置及指南(简)

热门文章

  1. python汉诺塔问题输入层数输出整个移动流程_python实现汉诺塔方法汇总
  2. obj是什么意思_为什么要学正则表达式 - 3
  3. 打豆豆游戏c语言编程,C语言程序打豆豆(函数版)
  4. CAN 多于8字节的拆包组包协议
  5. numpy(3)-numpy.random.random() ,random_sample()连续均匀分布
  6. Yinchuan-B The Great Wall
  7. 【职场】清华同学在鹅厂五星绩效,还是失业了!
  8. 【Python】Jupyter Notebook这款「骚气满满」的小工具,简直太爱了!
  9. 【深度学习】transformer 真的快要取代计算机视觉中的 CNN 吗?
  10. 【机器学习基础】前置知识(二):30分钟掌握常用Jupyter Notebook用法