HarmonyOS 鸿蒙Next 多模块har包依赖问题

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 多模块har包依赖问题

将一个复杂模块的Har包,拆分成多个子模块har包,其中子模块有依赖关系
子模块说明:
- [ ] 基础模块:AIAbility、AIClient、AITools,其中AITools依赖AIAbility
- [ ] 功能模块:faceDetection,依赖AIAbility、AIClient、AITools
- [ ] 实验Demo:调试faceDetection功能
当前情况:
1. 直接通过在oh-package.json5中配置模块相对路径依赖,模拟器、真机正常运行
1. “AIAbility.har”: “file:…/AIAbility”
2. 将所有模块制作出har包
1. Oh-package.json5中配置对应依赖模块har包路径,模拟器正常、真机找不到模块
1. “AIAbility.har”: “file:./…/AIAbility/build/default/outputs/default/AIAbility.har”
2. 将依赖模块的har包拷贝到对应子模块模块libs目录,Oh-package.json5中配置har包路径,模拟器正常、真机找不到模块
1. “AIAbility.har”: “file:./libs/arm64-v8a/AIAbility.har”
问题:
1. 我添加的模块是动态库,构建的har包,是否存在使用问题?我当前的ECO无法添加静态模块
2. AITools如何配置依赖,依赖的har包放哪里?
3. Demo如何配置依赖,依赖的har包放哪里?
4. 不采用私库进行har包管理,本地管理如何实现?


更多关于HarmonyOS 鸿蒙Next 多模块har包依赖问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
建议参考文档 修改一下模块的类型:
https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-package-structure-49-V5

请使用 har 模块 打包 .har 文件, hsp 模块 打包 .hsp或 .tgz 文件
hsp打包出来的 .har 是只有声明接口的,实现在.hsp文件里,参考链接:
https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-package-structure-33-V5

更多关于HarmonyOS 鸿蒙Next 多模块har包依赖问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS 鸿蒙Next多模块har包依赖问题,以下是一些直接相关的解决方案:

在鸿蒙系统中处理多模块har包依赖时,首先需要确保每个har包正确声明其依赖关系。在har包的module.json文件中,通过dependencies字段指定其他har包或模块的依赖。确保这些依赖关系在构建系统中被正确解析和加载。

如果依赖关系复杂,可以考虑使用模块化工具或构建系统的高级功能来管理依赖,如条件依赖、版本冲突解决等。同时,检查是否存在循环依赖的问题,这通常会导致构建失败。

在构建多模块项目时,确保所有har包都已正确导入到项目中,并且构建路径和配置正确无误。使用命令行工具或IDE的构建功能时,注意查看构建日志,以确定是否有依赖解析错误或加载失败的问题。

此外,确保使用的鸿蒙SDK版本支持当前项目的依赖管理需求。如果SDK版本过旧,可能需要升级到最新版本以支持新的依赖管理特性。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部