鸿蒙5.0开发进阶:配置构建-多模块管理

往期鸿蒙5.0全套实战文章必看:(文中附带全栈鸿蒙5.0学习资料)


多模块管理

模块是应用/元服务的基本功能单元,包含了源代码、资源文件、第三方库及应用/元服务配置文件,Hvigor支持工程多模块管理。您可在工程下的build-profile.json5配置文件中增加对应模块信息,即可对模块进行工程绑定和管理,或在hvigorconfig.ts脚本中动态添加或排除某个模块。同时也支持分模块配置、编译和打包。

多模块配置

静态配置模块

工程级build-profile.json5配置文件中"modules"字段,用于记录工程下的模块信息,主要包含模块名称、模块的源码路径以及模块的target信息。

例如以下目录中存在两个模块目录,您可在工程下的build-profile.json5配置文件,添加模块信息,使得模块与工程进行绑定:

Hvigor工程结构
└─ .hvigor目录    // 构建项目的缓存文件目录,不需要开发者改动,可以删除
└─ module1
   └─ 模块源码文件
   └─ build-profile.json5    // 模块级别的构建静态配置文件,主要用于定义当前模块的构建信息、hap(hsp、har)的构建行为等
   └─ hvigorfile.ts    // 模块级别的构建动态自定义脚本,主要用于定义和扩展hap(hsp、har)的构建流程
   └─ 其他配置文件
└─ module2
└─ hvigor目录
   └─ hvigor-config.json5    // 构建引擎的配置文件,主要用于定义开发态版本号、依赖插件的版本以及Hvigor相关能力的配置等
└─ build-profile.json5    // 工程级别的构建静态配置文件,主要用于定义整个项目的模块信息、应用信息、app的构建行为等
└─ hvigorfile.ts    // 工程级别的构建动态自定义脚本,主要用于定义和扩展app的构建流程
└─ 其他配置文件

其他配置文件:

  • oh-package.json5:应用的三方包依赖配置文件
  • local.properties: 应用本地环境配置文件
  • obfuscation-rules.txt: 应用模块的混淆规则配置文件
  • consumer-rules.txt: 库模块默认导出的混淆规则文件,会打包到HAR包中;仅支持HAR模块

工程下的build-profile.json5文件中模块配置示例:

{
  "modules": [
    {
      "name": "module1", // 模块的名称。该名称需与module.json5文件中的module.name保持一致。在FA模型中,对应的文件为config.json。
      "srcPath": "./module1" // 模块的源码路径,为模块根目录相对工程根目录的相对路径
    },
    {
      "name": "module2",
      "srcPath": "./module2"
    }
  ]
}

动态配置模块

Hvigor支持在hvigorconfig.ts脚本中动态添加或排除某个模块。

分模块编译

Hvigor支持分模块编译和打包。您可以通过以下两种方式进行分模块构建:

  • 在DevEco Studio中,选中需构建的模块目录后,点击Build菜单栏下的"Make module 'module1'",其中"module1"根据具体工程模块名称显示;
  • 在DevEco Studio的Terminal中,指定模块进行编译。比如模块类型为entry,目标产物target为default,构建HAP模块,可执行以下命令:
hvigorw --mode module -p product=default -p module=module1@default assembleHap

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值