Gin 和 Vue 项目打包静态文件
Contents
在使用 Go 语言带来的便利时,我们往往也热衷于打包成单一的可执行文件,这样不仅方便传输,也便于维护。
如果是普通的Go
程序,倒是直接可以编译成可执行文件,但是当使用web
项目时,外部html
js
css
等文件,就没法直接编译了,这就需要用到一些静态文件打包的方法。
可以直接在awesome-go-resource-embedding看到有很多内嵌资源的方法,我这里只举例几个自己用过的,其他的你们可以自己去看看。
go-bindata
刚说好的在上面的awesome
里面找,结果一上来就是一个没列入在内的go-bindata,这个项目并没有在awesome
里面,可能是时间比较久,又没有再更新,不过我最终却是选用的这个,原因后面我会说到。
使用
首先,看看我的目录结构:
|
|
其中,需要内嵌的静态文件有:
conf
:是放置配置文件的dist
:是vue
项目打包后的输出目录
安装go-bindata
:
|
|
打包静态文件:
|
|
-o
: 表示输出的目录
-pkg
: 表示输出的包名
conf/... dist/...
: 后面跟需要打包的文件夹,不要忘了三个点
同样,也可以通过go-bindata-assetfs来进行打包,兼容http.FiltSystem
,这样也更为方便:
|
|
注意:-prefix dist
配置是用来忽略dist
。详情请看这里
在Gin
中使用
|
|