Skip to content

使用命令行工具 ​


energy cli ​

先获取 energy cli,可使用预编译需下载, 也可自行编译

系统使用 ​

  • Windows

打开 cmd,输入命令

cmd
energy-xxx.exe [options] [args]
  • MacOS 和 Linux

需要给 energy cli 执行权限

cmd
chmod +x enrgy-xxx

MacOS

  1. 需要安装 xcode。 Golang 编译或运行时所需

  2. 第一次运行命令时会阻止其运行

打开 系统偏好设置,然后选择 安全性与隐私。

在 通用 选项卡下,如果看到提示 已阻止使用xxx,点击“仍要打开”以允许该应用程序运行。

然后再次运行即可执行

cmd
energy-xxx [options] [args]

命令参数 ​

energy [options]

参数名说明
bindataGo版本小于1.16时绑定内嵌资源
build编译&构建应用
clicli 自身命令
env开发环境控制
genwindows生成ico和syso
helpenergy [cmd] -h
init应用初始化
install环境安装
package制作应用安装包
version查看所有已发行版本

命令参数详情 ​

install - 环境安装 ​

energy install

自动检查当前系统环境,并安装和配置完整的开发环境

如未指定-p在当前命令执行目录创建框架安装目录, 目录名: energy

  • 开发环境依赖模块
  • 以下模块根据不同平台提供安装选项, 并自动安装和配置
平台软件模块描述
WindowsGolang、CEF,liblcl、UPX、NSIS、7zWindows AMD, 安装选项
LinuxGolang、CEF,liblcl、UPX、7zLinux64 AMD,ARM, 安装选项
MacOSGolang、CEF,liblclMacOS AMD,ARM, 安装选项
  • 软件模块说明
软件模块说明
GolangGo语言开发环境
CEF,liblclenergy依赖底层框架
UPX二进制文件压缩工具
NSISWindows软件安装包制作程序工具
7z配合NSIS压缩CEF
CEF,liblcl ​

安装当前所支持的系统架构

平台CEF,liblcl
Windows 32Windows 32
Windows 64Windows 64
Linux 64Linux 64
Linux ARM 64Linux ARM 64
MacOSX 64Darwin 64
MacOS ARM 64Darwin M1 M2
指定安装CEF,liblcl架构和系统位数 ​

我们也可以使用命令参数自定义安装的软件模块架构和位数

例如: 当前 windows64 平台, 我们可以使用下面命令安装32位架构, 但不会配置到环境变量

energy install -os windows -arch 386


init- 应用初始化 ​

energy init

执行命令在当前目录初始化并创建一个Golang的energy应用项目

  • 提供两种资源加载模式选项
加载模式说明
HTTP常规 http 服务支撑资源加载, 通过网络请求
Local Load本地资源加载 1. 支持本地读取 2. 支持内置二进制执行文件中读取
目录结构 ​

resources

本地或内置资源存放目录, 可自定义目录名, 非固定.

build

该目录自动生成: 用于编译、构建、生成安装包

文件说明 ​

config/energy_[os].json 项目配置文件, 用于构建和生成安装程序, 文件名不可更改.

go.mod 模块依赖管理, 文件名不可更改.

go.sum 模块依赖管理, 自动生成

main.go Golang入口启动程序


build - 构建&编译应用 ​

energy build

在应用目录main函数位置执行

energy build 默认会去除调试信息和符号, 和压缩

  • 不同平台区别
平台描述
Windows去除调试信息和符号, 生成执行文件图标
Linux去除调试信息和符号
MacOS去除调试信息和符号
参数 ​
名称描述平台
-p, --path编译的应用根目录, 默认当前目录all
-u, --upx如果安装了upx同时设置了该参数, 二进制文件将使用upx压缩, 默认未启用all
--upxFlagupx参数, 默认空all
--args传递Go的命令参数all
cmd
完整参数示例使用
energy build -p /to/app/path -u --upxFlag="--best --no-color" -d

package - 制作安装包 ​

energy package

在应用根目录执行

安装包制作条件 ​
  1. 需先 build 应用, 得到二进制执行文件
  2. 开发环境和 energy.json 须配置正确
  3. 需安装以下软件包
平台安装包制作程序描述
WindowsNSIS通过energy cli安装
Linuxdpkg系统自带
MacOSpkgbuild系统自带
  1. 附加条件
平台软件包
Windows7z, nsis7z
Linux7z
MacOSupx
配置文件 energy_[os].json ​

config/energy_[os].json 应用配置,主要用于构建和制作安装包

  • 字段说明

Windows - Linux - MacOS

配置字段 ​
  • project 应用根对象
字段名描述
name自动生成, 应用项目名
projectPath自动生成, 完整项目路径
frameworkPath自动生成, 完整CEF路径
assetsDir项目构建和安装包制作模板资源目录, 默认assets,如自定义须自己配置模板
outputFilename编译&构建时生成的二进制执行文件名
  • windows - info windows 应用信息
字段名描述
icon应用图标, windows:构建时自动加上该图标, 如是png格式会自动转换ico, linux, mac应用图标
companyName公司名称
productName产品名称
fileVersion文件版本
productVersion产品版本
copyright版本信息
comments描述
fileDescription文件描述
  • windows - nsis windows 应用安装包生成配置
字段名描述
iconNSIS 安装程序图标 windows
unIconNSIS 卸载程序图标 windows
include自定义打包资源
exclude排除打包资源
licenseNSIS 授权描述界面,txt文本格式, 全路径名
languageNSIS 安装程序语言, 默认:english, 中文:SimpChinese, 参考: nsis\Contrib\Language files
requestExecutionLevelNSIS 执行等级, 默认: admin, 空: 当前用户
compressCEF压缩, 目前仅支持7z
  • 关于nsis energy安装nsis时已经集成7z插件, 如果你自己安装可能没有7z, 制作安装包时可能报错. 你可以通过自己下载安装和相关插件nsis或重新使用energy安装nsis

  • linux -info linux 应用信息

字段名描述
icon应用图标, windows:构建时自动加上该图标, 如是png格式会自动转换ico, linux, mac应用图标
companyName公司名称
productName产品名称
productVersion产品版本
comments描述
  • linux - dpkg linux 应用安装包生成配置
字段名描述
include自定义打包资源
exclude排除打包资源
package包名 com.companyName.productName
homepage首页
compressCEF压缩, 目前仅支持7z

version - 查看所有已发行版本 ​

energy version


env - 查看开发环境变量 ​

energy env


setenv - 设置开发环境变量 ​

energy setenv

v - 查看当前cli版本 ​

energy cli -v

gen - windows 生成ico和syso ​

energy gen --iconenergy gen --syso

bindata - 内嵌资源到exe中 ​

//go:generate energy bindata --fs --o=assets/assets.go --pkg=assets --paths=./assets

执行Go生成命令 go generate

GO
ENERGY