【HarmonyOS Next之旅】DevEco Studio使用指南(三十四) -> 配置构建(一)

目录

[1 -> 多模块配置](#1 -> 多模块配置)

[1.1 -> 静态配置模块](#1.1 -> 静态配置模块)

[1.2 -> 动态配置模块](#1.2 -> 动态配置模块)

[2 -> 分模块编译](#2 -> 分模块编译)

[3 -> 添加依赖项](#3 -> 添加依赖项)

[3.1 -> 远程三方包](#3.1 -> 远程三方包)

[3.2 -> 本地文件夹](#3.2 -> 本地文件夹)

[3.3 -> 本地HAR/HSP包](#3.3 -> 本地HAR/HSP包)


1 -> 多模块配置

1.1 -> 静态配置模块

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

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

其他配置文件:

  • 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"
    }
  ]
}

1.2 -> 动态配置模块

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

2 -> 分模块编译

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

3 -> 添加依赖项

应用/元服务支持通过包管理工具ohpm来安装、共享、分发代码,管理项目的依赖关系。本文介绍了在项目中如何添加依赖项。

您可在工程或模块下的oh-package.json5文件中的dependencies(生产依赖)/devDependencies(开发依赖)字段中指定依赖项,以上两种依赖字段均支持引用远程三方包、本地文件夹和本地HAR/HSP三种方式。oh-package.json5文件中的dynamicDependencies(动态依赖)仅限于动态依赖HSP的使用场景。以下配置以dependencies为例。

3.1 -> 远程三方包

在需要引入三方包的模块的oh-package.json5文件中设置三方包依赖,配置示例如下:

复制代码
"dependencies": {
  "@ohos/lottie": "^2.0.0"
}

3.2 -> 本地文件夹

在模块的oh-package.json5文件中设置本地文件夹,配置示例如下:

复制代码
"dependencies": {
  "folder": "file:../folder"
}

3.3 -> 本地HAR/HSP包

  • 引用HAR:

    "dependencies": {
    "package": "file:../package.har"
    }

  • 引用HSP(仅在release模式下,构建HSP会生成tgz包):

    "dependencies": {
    "package": "file:../package.tgz"
    }

依赖设置完成后,需要执行ohpm install命令安装依赖包,依赖包会存储在对应模块的oh_modules目录下。


感谢各位大佬支持!!!

互三啦

相关推荐
程序猿追10 小时前
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试
开发语言·kotlin·harmonyos
懿路向前13 小时前
HarmonyOS 粒子特效实战:emitter.size 是双刃剑:粒子精确定位 [0,0] 与条带随机出生(HarmonyOS)
华为·harmonyos
马剑威(威哥爱编程)13 小时前
【共创稿事节】HarmonyOS 7 Agent 开发实战 04:云端 RAG 搭企业私有知识库问答
人工智能·华为·harmonyos
贾伟康14 小时前
【晨迹相机|20】HarmonyOS ArkTS AppGallery 发布复查实战:核对包名、版本、设备、素材和离线声明
harmonyos·arkts·appgallery·发布审核·上架复查
特立独行的猫a15 小时前
用仓颉写桌面应用:从 npx 建工程到串口实时示波器
开源·harmonyos·tauri·仓颉·cj-tarui
m0_6855350816 小时前
光学设计自学
华为·光学·光学设计·光学工程·镜头设计
懿路向前17 小时前
HarmonyOS 粒子特效实战:马赛克切块提速 17.6×~38×:desiredRegion 重复读盘与一次解码管线(HarmonyOS)
华为·harmonyos
垆边人似月.17 小时前
华为题:LRU 缓存
缓存·华为
天府云创18 小时前
Agentic开发时代到来——鸿蒙PC三大原生开发工具公测
华为·操作系统·harmonyos·鸿蒙系统·cli·deveco·agentic
程序猿追18 小时前
Fleks 鸿蒙适配:从八个小球看实体和组件的变化
华为·harmonyos