HbuilderX,找不到rollup/rollup-win32-x64-msvc
在使用HbuilderX,使用vue3开发uniapp时,我运行app,报错,rollup组件找不到了。这个rollup是一个编译js的工具,win32-x64的意思是采用windows版本64位的运行版本,msvc是说,需要windows平台下的msvc,它是一种c++编译器的类型,比如QT,就有使用另一种MinGW编译器。总的来说,rollup这个组件,是在64位的windows系统有msvc编译器的平台里开发使用。所以这里有个排查思路:64位windows系统,是否安装msvc编译器。下载地址:https://aka.ms/vs/17/release/vc_redist.x64.exe
我简单看了哈加载这个组件的代码,如果是node的进程是32位系统的,它会加载x32的rollup包,node的进程是64位的则统加载64位的包。
先看看HbilderX的安装路径下:HBuilderX\plugins\uniapp-cli-vite\node_modules
然后搜索“rollup-win32-x64-msvc”,看文件夹里是否有这个包,这个uniapp-cli-vite是HBuilderX下载的运行vue3版本的uniapp的插件,如果没有找到这个包,就删除lock和node_modules文件,重新在这个路径下npm i -f一下,一定要-f,不然一些x64版本的可能包安装不起。简单的操作,就是选中在当前文件管理器的路径框,输入cmd,然后回车,在弹出的命令行里输入npm i -f,前提是node配值了环境变量,能正常在cmd执行命令。
当这个条件已经排除了,查看本机系统,是否安装msvc编译器。一般安装了visualStudio,开发QT、C#,C++的都应该有。下载地址:https://aka.ms/vs/17/release/vc_redist.x64.exe
如果还是不得行,就重新安装HbuilderX试试。重新安装后,最好重启哈电脑,不然即使运行新的HBuilder,可能运行的还是以前内存中旧版本的HBuilderX。
最后还有个自己不确定的因素,64位系统里装了32位的node运行时。
总结:1、查看HBuilderX\plugins\uniapp-cli-vite\node_modules文件夹下是否有“rollup-win32-x64-msvc”文件夹。2、是否安装msvc编译工具。3、1和2都不行就删除HbuilderX后,重新安装HbuilderX。