我们都知道GoFrame提供了强大的命令行工具,可以让我们在开发的过程中简单的生成可执行文件。现在,让我们一起来看看怎么操作吧。
首先我们需要在hack目录的config.yaml中配置编译选项,我们以windows为例:
windows可执行文件
gfcli:
build:
name: "gf"
arch: "amd64" # 指定架构,可以是 amd64, 386 等
system: "windows" # 指定系统为 windows
mod: "none" # 默认为 none,根据需要调整
packSrc: "resource,manifest" # 指定需要打包的资源
version: "v1.0.0" # 版本号
output: "./bin" # 输出目录
extra: "" # 额外的编译参数
执行gf build 命令会看到以下输出:
2024-08-11 20:53:52.989 gf pack resource,manifest internal/packed/build_pack_data.go --keepPath=true
2024-08-11 20:53:53.040 done!
2024-08-11 20:53:53.075 start building...
2024-08-11 20:53:53.075 go build -o ./bin main.go
2024-08-11 20:54:01.870 done!
2024-08-11 20:54:01.872 remove the automatically generated resource go file: internal/packed/build_pack_data.go
此时在bin目录下就会生成main.exe的可执行程序了。
注意:
需要在工程中建立bin目录,否则会出现问题
Linux可执行文件
gfcli:
build:
name: "gf"
arch: "amd64" # 指定目标架构为 amd64
system: "linux" # 指定目标系统为 linux
mod: "none" # 模式设置为 none,或根据需要调整
packSrc: "resource,manifest" # 打包的资源
version: "v1.0.0" # 版本号
output: "./bin" # 输出目录
extra: "" # 额外的编译参数
Mac可执行文件
gfcli:
build:
name: "gf"
arch: "arm64" # 指定目标架构为 arm64
system: "darwin" # 指定目标系统为 macOS
mod: "none" # 模式设置为 none,或根据需要调整
packSrc: "resource,manifest" # 打包的资源
version: "v1.0.0" # 版本号
output: "./bin" # 输出目录
extra: "" # 额外的编译参数