1. 指定编译模式
1.1. 界面设置
DevEco Studio 支持界面配置 Build Mode 配置选项,点击右上角图标选择编译模式:

内置三个选项:,debug,release。
如果在 build-profile.json5 文件中,自定义了其他编译模式,Build Mode 配置界面会提供对应选项。
- :默认选项,选择此项,构建 APP 包,使用 release 编译模式;构建 HAP/HSP/HAR 包,使用 debug 编译模式。
- debug:构建 APP/HAP/HSP/HAR 包,均使用 debug 编译模式,buildOption 中的 debuggable 默认为 true。此时的构建产物默认包含大量的调试信息,例如变量名、函数名、行号等,可以直接进行调试。这些调试信息会增加程序的体积,可能导致程序的运行速度降低。
- release:构建 APP/HAP/HSP/HAR 包,均使用 release 编译模式,buildOption 中的 debuggable 默认为 false。此时的构建产物会去掉大量的调试信息,只包含应用程序必要的代码和数据,以减小程序的体积,并且会对编译的字节码进行优化,提高程序的运行速度。
说明
- DevEco Studio 界面设置或命令行中指定的 buildMode 构建模式,只代表当前选择的 buildMode 的名称,最终编译产物是否是 Debug 应用取决于 buildOption 配置中的 debuggable 字段,构建模式使用的具体 buildOption 配置信息。
- LiteWearable 设备使用标准 JS 运行时,因此对应的应用开发在 release 模式下的构建产物中包含 JS 源码,请注意代码资产保护。
1.2. 命令行设置
- 使用命令行参数
-p buildMode指定编译模式,比如指定 "release" 编译模式,构建 entry 模块的 HAP 包:
hvigorw --mode module -p product=default -p module=entry@default -p buildMode=release assembleHap
- 使用命令行参数
-p debuggable=true指定 "debug" 编译模式,-p debuggable=false指定 "release" 编译模式,比如指定 "release" 编译模式,构建 entry 模块的 HAP 包:
hvigorw --mode module -p product=default -p module=entry@default -p debuggable=false assembleHap
当未指定编译模式时,构建 APP 包,默认 release 模式;构建 HAP/HSP/HAR 包时,默认 debug 模式。
2. 定制编译模式
Hvigor 支持定制编译模式,采用 buildOption 字段声明编译选项,并通过 buildModeBinder 来绑定 target、buildOption 以及 buildMode 三者之间的组合关系。
2.1. 定义编译选项
工程级 build-profile.json5 文件:
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| buildModeSet |







