hvigor ERROR: TypeError: Cannot read properties of undefined (reading 'split') HarmonyOS 鸿蒙Next

hvigor ERROR: TypeError: Cannot read properties of undefined (reading ‘split’) HarmonyOS 鸿蒙Next 【标题】编译项目时报错:hvigor ERROR: TypeError: Cannot read properties of undefined (reading ‘split’)

【设备信息】

【API版本】Api14

【DevEco Studio版本】 5.0.5.315

【问题描述】我在编译项目时出现了这个报错,大家有遇到过吗:

hvigor ERROR: TypeError: Cannot read properties of undefined (reading 'split')

【问题相关代码】


更多关于hvigor ERROR: TypeError: Cannot read properties of undefined (reading 'split') HarmonyOS 鸿蒙Next的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

可以根据下面的步骤排查下问题

1、开启堆栈跟踪,获取更详细的报错,参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-compiling-and-building-108-V5

2、检查版本信息和依赖关系:

  • ERROR: Cannot read properties of undefined (reading ‘split’) 的报错一般是升级后和某个三方sdk的版本没有对齐导致的兼容性问题,可以确认下之前是否正常?如果有使用对应的私仓har或者三方库可以检查下自己依赖的私仓har包和三方库等是否版本不兼容,可删除oh-package文件后重新下载三方库,然后升级重新打包试一试。

3、检查下OHMUrl的一致性:可能是OHMUrl不一致导致的,OHMUrl在工程级别build-profile.json5中的useNormalizedOHMUrl字段控制,在模块级build-profile.json5中的integratedHsp或byteCodeHar字段控制,整个工程中的OHMUrl需要保持和一致,可以先排查一下所有的的模块是否都一致

可以参考这篇文档中对useNormalizedOHMUrl的描述:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-build-profile-V5#section511142752919

目前的机制是整个工程中的OHMUrl需要保持一致,或者工程统一不配置OHMUrl。

更多关于hvigor ERROR: TypeError: Cannot read properties of undefined (reading 'split') HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


hvigor 是鸿蒙Next的构建工具,出现TypeError: Cannot read properties of undefined (reading 'split')错误,通常是由于代码中尝试对一个未定义的变量执行split方法导致的。具体原因可能包括以下几种情况:

  1. 未正确初始化变量:代码中某个变量在使用split方法之前未被正确赋值或初始化,导致其为undefined
  2. 路径或配置错误:在构建过程中,某些路径或配置项未正确设置,导致相关变量未被正确解析。
  3. 依赖缺失:项目中可能缺少某些依赖库或模块,导致相关变量未被正确加载。

解决方法:

  • 检查代码中所有使用split方法的地方,确保变量在使用前已被正确初始化。
  • 验证项目配置文件(如build-profile.json5)中的路径和配置项是否正确。
  • 确保所有依赖项已正确安装,并检查是否有缺失的模块。

该错误与Java或C语言无关,是鸿蒙Next构建工具hvigor在解析或处理代码时出现的JavaScript运行时错误。

回到顶部