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
【背景知识】
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中新建端云一体化项目点击预览器报错,可能由以下原因导致:
- 预览器版本与API20不兼容;
- 云开发资源配置未完成;
- 项目依赖未正确加载。
检查方法:确认DevEco Studio为最新版本,验证云开发服务是否开通,清理项目缓存并重新构建。报错日志可查看"Log"窗口的具体错误信息。
这个错误通常是由于DevEco Studio环境配置问题导致的。建议尝试以下解决方案:
- 检查项目配置:
- 确保项目目录下hvigorfile.ts和hvigorconfig.ts文件没有语法错误
- 确认项目SDK版本与API20匹配
- 清理缓存:
- 关闭DevEco Studio
- 删除项目目录下的.idea、build、oh_modules等文件夹
- 重新打开项目并同步gradle
- 更新开发环境:
- 检查DevEco Studio是否为最新版本
- 确认HarmonyOS SDK已正确安装API20版本
- 重建项目:
- 尝试新建一个空项目测试预览器是否正常工作
- 如果空项目正常,可能是原项目配置文件损坏
这个错误表明HVIGOR在编译时无法读取isSO属性,通常与环境配置相关而非代码问题。