在项目根目录下有一下几个文件
main.go
hub.go
client.go
home.html
打包成 exe
go build main.go hub.go client.go
在目录下 生成了 main.exe
文件 双击后 可以运行
但 当 把 main.exe 发给别人或者 拿到其他目录后,在运行是 错误的, 因为缺少 home.html
文件
go build
在打包的时候 ,没有把 text/template
模板文件打包进去
然后试着运行
go build main.go hub.go client.go home.html
named files must be .go files
显然 .html
文件 是不能打包进去的
如何才能把 go 项目 目录 打包在一个 .exe
文件呢
这样发布很方便,只需一个 文件,不用拖拉一堆文件了
首先那叫编译,不叫打包。再有.html是外部引用文件。他不是go的源文件怎么节能被go编译。想编译成一个文件就把html内容写go源码里面别外部调用。
go build确实只能编译go文件没有打包功能。
不过有第三方的嵌入式资源文件的打包工具:https://github.com/jteeuwen/g...
关于go-bindata的用法我就不叙述了,自己小小的研究下,很容易的。