HarmonyOS 鸿蒙Next主项目引用另一个项目的模块报错

HarmonyOS 鸿蒙Next主项目引用另一个项目的模块报错 按照文档提示配了也不行

hvigor ERROR: Failed :phone:default@PreBuild
hvigor ERROR: 00301010 Dependency Error

Error Message: The useNormalizedOHMUrl settings of packages [utils] and the project useNormalizedOHMUrl:true do not match.

hvigor ERROR: BUILD FAILED in 168 ms

Process finished with exit code -1


更多关于HarmonyOS 鸿蒙Next主项目引用另一个项目的模块报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

开发者您好,看报错是依赖的模块中useNormalizedOHMUrl设置与工程中不一致,可以参考编译报错中的两种方案排查并修改试试,若未能解决问题请提供能复现问题demo,感谢您的理解与支持。

更多关于HarmonyOS 鸿蒙Next主项目引用另一个项目的模块报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在项目根目录的 build-profile.json5 中添加全局配置,也不行吗

"buildOption": {
  "useNormalizedOHMUrl": true
}

检查下

  1. build-profile.json5里 看下useNormalizedOHMUrl字段

  2. compatibleSdkVersion>= 12

报错多为模块配置不一致导致。检查子模块 oh-package.json5 是否包含 exports 字段;主项目 oh-package.json5dependencies 引用模块名及版本;build-profile.json5 中配置模块路径或本地依赖。确认各模块的 module.json5apiVersioncompileSdkVersion 一致。同步并重新构建。

这是模块化引用时的一个配置对齐问题。主项目的 useNormalizedOHMUrl 设为 true,而被引用的 utils 模块默认或显式设为 false,导致构建失败。

解决方法: 打开 utils 模块根目录下的 build-profile.json5 文件,在 app 节点中添加或修改:

"useNormalizedOHMUrl": true

确保与被主项目的设置保持一致。之后清理构建缓存(Build -> Clean Project)再重新构建即可。

回到顶部