【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】DevECO IDE环境搭建及常见问题解决办法

描述

本文来源电子发烧友社区,作者:杜潇泊,帖子地址:https://bbs.elecfans.com/jishu_2002313_1_1.html

前一篇分享《
【老杜甩干货】使用WSL搭建鸿蒙 IOT最方便的编译环境》中,我介绍了如何使用WSL搭建一个编译环境(下图中的Linux compile server)。这次完成在windows上搭建代码的开发调试环境,Wiofi iot的开发环境终于完整了。
HarmonyOS
我整理了需要下载的所有软件包,方便大家批量下载。如下表:


内容 要求 链接
VSCode   https://vscode.cdn.azure.cn/stable/d2e414d9e4239a252d1ab117bd7067f125afd80a/VSCodeUserSetup-x64-1.50.1.exe
HUAWEI DevEco Device Tool   https://device.harmonyos.com/cn/ide#download
NodeJs   https://nodejs.org/dist/v12.19.0/node-v12.19.0-x64.msi
Python3.7+ 版本>=3.7 Windows上不需要单独安装
终端工具 能连接串口就行 个人比较喜欢MobaXterm,https://mobaxterm.mobatek.net/
Ch340串口驱动   http://www.wch.cn/search?q=ch340g&t=downloads

1.开发环境搭建&使用
原本打算详细记录一下,实际操作中发现根本不需要。官方的文档写的比较详细。
这里只记录我遇到的问题及处理方法。估计大家也会遇到,遇到问题的时候回来查看一下就好

问题1:使用IDE 烧写时报错
  • 现象
IDE控制台报错如下:
  1. hpm : 无法加载文件 C:Users用户名AppDataRoamingnpmhpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中
  2. 的 about_Execution_Policies。
  3. 所在位置 行:1 字符: 1
  4. + hpm run 'upload'
  5. + ~~~
  6.     + CategoryInfo          : SecurityError: (:) [],PSSecurityException
  7.     + FullyQualifiedErrorId : UnauthorizedAccess
  8. The terminal process "C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
复制代码

  • 解决办法:
  • 管理员运行PowerShell
  • 输入set-ExecutionPolicy RemoteSigned

问题2:IDE无法刷新出串口号,不断要求安装串口组件
  • 现象
  • IDE不断弹出需要安装serialport的窗口
  • Burn设置中无法选择串口端口号
终定位发现是node-gyp有一个库不对。 能直接确认这个问题的现象是,当你卸载serialport重新安装时报错:
  1. PS C:WINDOWSsystem32> npm uninstall -g serialport
  2. ...
  3. PS C:WINDOWSsystem32> npm install -g serialport
  4. > @serialport/bindings@9.0.2 install C:UsersdxbAppDataRoamingnpmnode_modulesserialportnode_modules@serialportbindings
  5. > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
  6.  
  7. prebuild-install WARN install No prebuilt binaries found (target=12.19.0 runtime=node arch=x64 libc= platform=win32)
  8.  
  9. C:Users用户名AppDataRoamingnpmnode_modulesserialportnode_modules@serialportbindings>if not defined npm_config_node_gyp (node "C:Program Filesnodejsnode_modulesnpmnode_modulesnpm-lifecyclenode-gyp-bin\....node_modulesnode-gypbinnode-gyp.js" rebuild )  else (node "C:Program Filesnodejsnode_modulesnpmnode_modulesnode-gypbinnode-gyp.js" rebuild )
  10. 在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。
  11.   serialport.cpp
  12.   serialport_win.cpp
  13.   win_delay_load_hook.cc
  14. C:\Users\用户名\AppData\Local\node-gyp\Cache\12.19.0\x64\node.lib : fatal error LNK1107: 文件无效或损坏: 无法在 0x541B04 处读
  15. 取 [C:UsersdxbAppDataRoamingnpmnode_modulesserialportnode_modules@serialportbindingsbuildbindings.vcxproj]
复制代码


上面报错中提到,如下文件被损坏了: C:Users用户名AppDataLocalnode-gypCache12.19.0x64node.lib
  • 解决办法
在node官网下载正确的lib库,替换到你的环境中。下载地址https://nodejs.org/dist/v12.19.0/win-x64/
注意12.19.0是nodejs的版本,你需要找自己对应的版本
替换后重新安装serialport就可以了。

问题3:烧写时报错MODULE_NOT_FOUND
  • 现象
启动烧写后控制台报错
  1. > Executing task: hpm run 'upload' <
  2.  
  3. internal/modules/cjs/loader.js:834
  4.   throw err;
  5.   ^
  6.  
  7. Error: Cannot find module 'D:HarmonyOSWorkspace%UPLOAD_SCRIPT%'
  8.     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:831:15)        
  9.     at Function.Module._load (internal/modules/cjs/loader.js:687:27)
  10.     at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
  11.     at internal/main/run_main_module.js:17:47 {
  12.   code: 'MODULE_NOT_FOUND',
  13.   requireStack: []
  14. }
  15. The terminal process "C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
复制代码
  • 解决方法
用文本编辑器打开文件C:Users用户名.hpmhpmrc
可能显示如下,注意第二行,这里多了一个空行
  1. registry = https://hpm.harmonyos.com
  2.  
  3. globalRepo = C:Usersdxb.hpmglobal
  4. strictSsl = true
  5. shellPath = C:WINDOWSsystem32cmd.exe
复制代码

删除掉其中多余的空行、保存、然后重新启动IDE。
 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分