HarmonyOS 鸿蒙Next API20中新建端云一体化项目,点击预览器报错

HarmonyOS 鸿蒙Next API20中新建端云一体化项目,点击预览器报错

背景:

项目新建,并没有添加或者修改任何代码,在Index.ets文件下点击预览器,出现错误。

错误代码

> hvigor ERROR: Failed :Phone:default@PreviewArkTS...
> hvigor DEBUG hvigor-core-task hvigor build process will be closed with an error.
> hvigor ERROR: 00305010 Syntax Error
Error Message: Cannot read properties of undefined (reading 'isSO')

* Try the following:
  > Check whether undefined attributes or methods are used in the hvigorconfig.ts and hvigorfile.ts files.
  > Go to the official website for help
  > More info: https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-compiling-and-building-108-V5

> hvigor ERROR: TypeError: Cannot read properties of undefined (reading 'isSO')
    at generateOhmUrlForSourceFile (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor-ohos-plugin\src\utils\ohmurl-utils.js:1:900)
    at C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor-ohos-plugin\src\tasks\previewer-ark-compile.js:1:3294
    at Array.forEach (<anonymous>)
    at PreviewerArkCompile.addOhmurlToHarAbility (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor-ohos-plugin\src\tasks\previewer-ark-compile.js:1:3091)
    at PreviewerArkCompile.doTaskAction (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor-ohos-plugin\src\tasks\previewer-ark-compile.js:1:2539)
    at async PreviewerArkCompile.<anonymous> (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor-ohos-plugin\src\tasks\task\ohos-module-task.js:1:2035)
    at async PreviewerArkCompile.execute (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor\src\base\external\task\core-task-impl.js:1:2191)
    at async TaskProxy.execute (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor\src\base\internal\task\proxy\task-proxy.js:1:6131)
    at async doIncrementalTask (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor\src\base\internal\core\incremental-task-executor.js:1:941)
    at async executeOneTask (C:\Program Files\Huawei\DevEco Studio\tools\hvigor\hvigor\src\base\internal\task\core\task-runner.js:1:4225)
> hvigor ERROR: BUILD FAILED in 1 s 291 ms 

更多关于HarmonyOS 鸿蒙Next API20中新建端云一体化项目,点击预览器报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

11 回复

【背景知识】

DevEco Studio为开发者提供了UI界面预览功能,可以查看UI界面效果,方便开发者随时调整界面UI布局。预览器支持界面代码的实时预览,只需要将开发的源代码进行保存,就可以通过预览器实时查看组件/界面运行效果,方便开发者随时调整代码。

【问题定位】

没有任何添加或者修改代码的情况下,点击预览器报错,无非是版本插件不兼容或者环境变量有问题导致报错。

【分析结论】

根据报错信息:“Cannot read properties of undefined (reading ‘isSO’)”分析,可能导致此错误的原因有:

  • SDK版本不匹配:新建的API 20项目需要对应版本的SDK支持,若DevEco Studio或SDK未更新到适配版本,会导致hvigor插件内部方法调用异常(如报错中的isSO方法未定义)。
  • hvigor工具链问题:预览器依赖的编译插件可能存在版本缺陷,特别是在ARM架构环境下某些逻辑处理异常。
  • 环境变量冲突:旧版本Java/JDK残留配置可能干扰构建流程。

【修改建议】

  • 步骤1:更新开发工具链: 打开DevEco Studio,进入Tools>SDK Manager>HarmonyOS SDK,确保已勾选API 20对应的SDK版本和Previewer组件,若存在可用更新,点击Apply完成SDK更新。
  • 步骤2:验证环境配置: 检查Java版本:在终端执行java -version,确认使用JDK 17+,检查Node.js版本:需为v18.19.0及以上。
  • 步骤3:清理构建缓存: 关闭当前项目,删除工程目录下.hvigor、.idea、build目录,重新打开项目并执行File>Sync Project with Hvigor Files。
  • 步骤4:检查IDE版本。 若上述步骤无效: 前往华为开发者官网下载最新DevEco Studio,重新创建API 20端云一体化项目测试预览功能。

【总结】

根据报错信息和新建端云一体化项目的场景,该问题通常由开发环境配置或工具版本不兼容引起。

更多关于HarmonyOS 鸿蒙Next API20中新建端云一体化项目,点击预览器报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


请问解决了吗?我今天也出现这个问题了

用真机或者模拟器打开试试

端云一体化应该还是不支持模拟器和预览器,需要用真机调试

不是调试,是直接预览器打不开,

不支持模拟器和预览器,

我换了一个电脑新建端云一体化项目是可以打开预览器的,只有某个环境出现的问题,但是不知道怎样子排查,

看起来像是预览器那块的问题

是的,我试了一下正常项目都打不开,

在HarmonyOS Next API20中新建端云一体化项目点击预览器报错,可能由以下原因导致:

  1. 预览器版本与API20不兼容;
  2. 云开发资源配置未完成;
  3. 项目依赖未正确加载。

检查方法:确认DevEco Studio为最新版本,验证云开发服务是否开通,清理项目缓存并重新构建。报错日志可查看"Log"窗口的具体错误信息。

这个错误通常是由于DevEco Studio环境配置问题导致的。建议尝试以下解决方案:

  1. 检查项目配置:
  • 确保项目目录下hvigorfile.ts和hvigorconfig.ts文件没有语法错误
  • 确认项目SDK版本与API20匹配
  1. 清理缓存:
  • 关闭DevEco Studio
  • 删除项目目录下的.idea、build、oh_modules等文件夹
  • 重新打开项目并同步gradle
  1. 更新开发环境:
  • 检查DevEco Studio是否为最新版本
  • 确认HarmonyOS SDK已正确安装API20版本
  1. 重建项目:
  • 尝试新建一个空项目测试预览器是否正常工作
  • 如果空项目正常,可能是原项目配置文件损坏

这个错误表明HVIGOR在编译时无法读取isSO属性,通常与环境配置相关而非代码问题。

回到顶部