Iris框架打包成二进制文件(包含静态文件)
简介最近在使用Golang的WEB框架Iris做了一个小的系统,但是里面有一些静态的资源,如css、js、html文件,如果只是通过go build打包的这些静态文件是打包不进去的,所以本文主要记录下如何将所以文件都打包的二进制文件中。
本文主要记录如何打包Golang的Iris框架写的WEB项目,目录结构如下:
assets css js templates index.html ...(其他的html文件) src ...(web相关的controller,model,service) main.go
这里贴一下main.go文件中如何加载的模板文件:
// 加载视图模板地址
tmpl := iris.HTML("./assets/templates", ".html")
app.RegisterView(tmpl)
上面的代码是不需要打包的基本代码结构。如果我们需要打包这里的静态文件,就需要安装一个第三方包,安装命令如下:
go get -u github.com/jteeuwen/go-bindata/... #后面三个点必须要,不是写错了
下面我们正式进入打包的流程。
1、首先通过go-bindata命令打包assets下的所有文件
go-bindata ./assets/...
打包完成后会生成一个bindata.go
2、修改main.go代码
// 加载视图模板地址
tmpl := iris.HTML("./assets/templates", ".html")
tmpl.Binary(Asset, AssetNames) //新添加这一行代码
app.RegisterView(tmpl)
在进行开发的时候先屏蔽掉新加的这样代码;
打包出现如下错误:Error: Application entry file "dist\electron\main.js" in the "D:\gui\demo2\build\win-unpacked\resources\app.asar" does not exist. Seems like a wrong configuration.
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
Python调用WPS把文档转换PDF,并把PDF转图片,首先需要安装WPS,然后利用pypiwin32把文档转化成PDF,再利用fitz、PyMuPD把PDF转化成图片
Centos中用Chrome将网页导出为PDF,chrome --headless --print-to-pdf https://developer.chrome.com/
OpenCV-Python图像金字塔向下取样和向上取样使用高斯金字塔,主要使用如下两个函数:cv2.pyRdown和cv2.pyrUp.
快速生成表格
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。