2.7 KiB
2.7 KiB
Build & Deploy(构建与部署)
构建系统:hvigor(HarmonyOS 官方构建工具),配置见 hvigor/、hvigorfile.ts、build-profile.json5。
构建 / 运行 Build & Run
- 主路径:DevEco Studio → Build / Run(GUI)。首次打开自动同步依赖。
- 命令行(
hvigorwwrapper 由 DevEco 首次同步生成):
# 构建 debug HAP
hvigorw assembleHap --mode module -p product=default -p buildMode=debug
# 构建 release HAP
hvigorw assembleHap --mode module -p product=default -p buildMode=release
产物通常在 entry/build/default/outputs/ 下(default 为 product 名)。
多模块构建 Multi-module Build
本工程为「单 HAP + 多 HAR」:entry/(HAP)+ common/(HAR)+ uikit/(HAR)。
- HAR(
common/uikit)作为entry的依赖,构建 entry 时会自动先编译依赖的 HAR,正常开发只需构建 entry。 - 任务类型:HAP 用
assembleHap,HAR 用assembleHar。 - 构建整个工程用
--mode project(按依赖顺序构建全部模块);构建单个模块用--mode module。 - 模块注册:根
build-profile.json5的modules;模块间依赖:各自oh-package.json5的dependencies用file:../xxx声明。
HAR 配置要点(易错):
module.json5的type必须是har(不是shared——shared对应 HSP,会要求hspTasks)。oh-package.json5的main: "Index.ets"指向模块根目录的Index.ets(该文件export * from './src/main/ets/Index.ets'转发公共 API)。- 权限(如
ohos.permission.INTERNET)只声明在 HAP 的module.json5的requestPermissions;HAR 不声明权限。
签名 Signing
build-profile.json5 里 signingConfigs 目前为空,且 products[].signingConfig 引用了 "default" —— 签名尚未配置。
要跑真机/模拟器需先配置签名:
- DevEco Studio → File → Project Structure → Signing Configs → 勾选自动签名(登录华为账号)。
- 或手动配置
.p12+.cer/.p7b。
该文件的签名部分属于 Agent 禁止修改 范围(见
AGENTS.md)。
产品与构建模式 Products & Build Modes
products:当前只有一个default(targetSdkVersion 6.0.2(22),runtimeOS: HarmonyOS)。buildModeSet:debug/release。
部署 Deploy
- 配置签名(见上)。
- 连接真机(开启开发者模式 + USB 调试)或启动模拟器。
- DevEco Studio 选择设备 → Run。
环境环境变量 / 本地配置
local.properties:本机 SDK 路径等,已 gitignore,勿提交,勿写密钥。- 依赖锁:
oh-package-lock.json5,提交以固定依赖版本。