【HarmonyOS NEXT】每次升级二方库或三方库,工程都会报错

【问题描述】

  1. 当项目里使用了模块静态共享包的形式开发,打包成har集成。

  2. 可能会出现几个模块依赖了相同模块的问题,而依赖的版本却不一样,例如:

    A模块依赖B、C、D

    B模块依赖C、E

    C同时被A、B依赖

    在开发阶段,当C版本升级时,A知道C有新版本,A升级了C的版本

    而B并不知道C升级了,依赖的是旧版本的C模块

    然而A还依赖B,这会导致A的直接间接依赖了两个版本的C,这会出现依赖冲突,导致项目报错

  3. 正常来说oh-package-lock.json5里会记录各模块的依赖关系,编辑器会更据oh-package.json5,依赖的安装情况,使用最新的C运行工程,是不应该出现报错的。

【可能原因】

  1. 编辑器的bug

  2. 编辑器有缓存

【解决方式】

  1. 构建-重新构建项目:如果这一步不行,继续往后执行。

  2. 构建-清理项目:执行完成编辑器会自动清理build目录

  3. 手动删除目录里所有的oh_modules

  4. 手动删除oh-package-lock.json5,(执行第4步会自动生成正确的文件)

  5. 关闭编辑重新打开,让编辑自动安装依赖(不建议执行完第2第3步后,手动执行ohpm install,因为关闭编辑可以打断与source.map引用)

【测试】

  1. 点击运行,项目能运行起来
相关推荐
_waylau5 分钟前
跟老卫学仓颉编程语言开发:浮点类型
人工智能·华为·harmonyos·鸿蒙·鸿蒙系统·仓颉
星空222321 分钟前
【HarmonyOS】React Native of HarmonyOS实战:手势冲突解决方案
react native·华为·harmonyos
键盘鼓手苏苏1 小时前
Flutter for OpenHarmony:cider 自动化版本管理与变更日志生成器(发布流程标准化的瑞士军刀) 深度解析与鸿蒙适配指南
运维·开发语言·flutter·华为·rust·自动化·harmonyos
无巧不成书02181 小时前
【RN鸿蒙教学|第11课时】应用打包与部署实战:完成从开发到落地的全闭环
react native·华为·开源·交互·harmonyos
前端不太难1 小时前
鸿蒙如何重新定义“超级 App”
华为·状态模式·harmonyos
星空22231 小时前
【HarmonyOS】HarmonyOS React Native实战:手势交互配置优化
react native·交互·harmonyos
松叶似针1 小时前
Flutter三方库适配OpenHarmony【secure_application】— onMethodCall 方法分发实现
flutter·harmonyos
阿林来了1 小时前
Flutter三方库适配OpenHarmony【flutter_speech】— 语音识别引擎创建
人工智能·flutter·语音识别·harmonyos
键盘鼓手苏苏1 小时前
Flutter for OpenHarmony:dart_ping 网络诊断的瑞士军刀(支持 ICMP Ping) 深度解析与鸿蒙适配指南
开发语言·网络·flutter·华为·rust·harmonyos
阿林来了1 小时前
Flutter三方库适配OpenHarmony【flutter_speech】— 语音识别启动与参数配置
人工智能·flutter·语音识别·harmonyos