HarmonyOS 鸿蒙Next 共享包打包和引用问题(无法打出tgz格式的动态共享包+引用静态共享包后安装报错)

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

HarmonyOS 鸿蒙Next 共享包打包和引用问题(无法打出tgz格式的动态共享包+引用静态共享包后安装报错) 我们有一个native module,目前已经编译测试通过了,主module通过源码依赖的方式是可以正常运行的,但是把这个native module打包成共享包,主module中本地引用时出现了问题,主要有两个问题:

  1. 打包为静态共享包har,主module引用后运行时提示:Failed to install the HAP or HSP because the dependent module does not exist。

  2. 打包为动态共享包hsp,没有发现官方文档中提到的.tgz格式的产物,仅有两个hsp格式的包,因此主module无法本地引用。


更多关于HarmonyOS 鸿蒙Next 共享包打包和引用问题(无法打出tgz格式的动态共享包+引用静态共享包后安装报错)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

1、打包为静态共享包har,主module引用后运行时提示:Failed to install the HAP or HSP because the dependent module does not exist。

从报错信息来看,应该是多模块调用时,har包或者hsp包依赖未安装导致的,可以在DevEco工具中的“运行/调试界面”中勾选如下选择并应用

  • 单击Run > Edit Configurations,在Deploy Multi Hap中,勾选Deploy Multi Hap Packages,选择多个模块

  • 单击Run > Edit Configurations,在General中,勾选Auto Dependencies。

相关文档,参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-run-debug-configurations#section393005432811

2、打包为动态共享包hsp,没有发现官方文档中提到的.tgz格式的产物,仅有两个hsp格式的包,因此主module无法本地引用。

检查是否是按照如下步骤来打包生成.tgz, 步骤如下:

  • 将编译模式切换成release模式

  • 选中HSP模块的根目录,点击Build > Make Module ${libraryName}启动构建。

  • 构建完成后,build目录下生成HSP包产物,其中.tgz用来上传至私仓

相关文档,参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hsp-V5#section7717162312546

更多关于HarmonyOS 鸿蒙Next 共享包打包和引用问题(无法打出tgz格式的动态共享包+引用静态共享包后安装报错)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS鸿蒙Next共享包打包和引用问题,以下是专业解答:

无法打出tgz格式的动态共享包: 在HarmonyOS系统中,tgz格式的动态共享包打包通常依赖于特定的打包工具或脚本。若无法生成,请检查以下几点:

  1. 确保使用的打包工具或脚本支持tgz格式。
  2. 检查打包命令的参数设置是否正确,包括源文件路径、目标文件路径及压缩选项等。
  3. 确认系统环境是否支持tgz格式的生成,如必要的库文件是否已安装。

引用静态共享包后安装报错: 静态共享包的引用问题可能源于多种因素:

  1. 确认静态共享包的版本与当前系统或应用兼容。
  2. 检查静态共享包的依赖关系是否完整,确保所有必要的依赖都已正确引用。
  3. 查看安装日志,分析报错信息,确定具体错误原因。
  4. 尝试重新编译或重新打包静态共享包,确保无损坏或错误。

如果以上方法均无法解决问题,可能是系统或工具的bug,或者配置存在特殊问题。此时,建议直接联系官网客服获取进一步帮助。官网地址是:https://www.itying.com/category-93-b0.html

回到顶部