【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. 点击运行,项目能运行起来
相关推荐
eqwaak01 小时前
科技信息差(9.13)
大数据·开发语言·人工智能·华为·语言模型
云雾J视界2 小时前
AI赋能与敏捷融合:未来电源项目管理者的角色重塑与技能升级——从华为实战看高技术研发项目的管理变革
人工智能·华为·项目管理·电源研发·敏捷项目·电源项目
爱笑的眼睛1115 小时前
HarmonyOS 应用开发深度解析:基于声明式UI的现代化状态管理实践
华为·harmonyos
前端世界15 小时前
HarmonyOS 实战:如何用数据压缩和解压让应用更快更省
华为·harmonyos
哦***716 小时前
华为FreeBuds 7i其他手机能用空间音频吗?如何开启?
华为·音频
安卓开发者16 小时前
鸿蒙Next Web组件详解:属性设置与事件处理实战
前端·华为·harmonyos
安卓开发者16 小时前
鸿蒙NEXT Web组件与JavaScript交互:打通原生与前端的桥梁
前端·javascript·harmonyos
森之鸟16 小时前
鸿蒙审核问题——折叠屏展开态切换时,输入框内容丢失
华为·harmonyos
不爱吃糖的程序媛16 小时前
表格底部增加一行合计功能的实现
华为·harmonyos
vipers_17 小时前
鸿蒙的编程软件的介绍
鸿蒙·鸿蒙编程软件