Windows11下使用serialport包报错无法找到bindings文件如何解决
可尝试的解决方案
- 清理项目依赖缓存后重装
先删除项目根目录下的node_modules文件夹、package-lock.json文件,依次执行以下命令:npm cache clean --force npm install - 安装Windows平台专用构建工具
执行全局安装命令自动配置兼容的编译环境:
安装完成后重新执行npm install -g windows-build-toolsnpm install serialport。 - 强制从源码编译serialport
安装时指定编译参数,跳过预编译包拉取逻辑:
若已安装过对应包,可直接执行重编译命令:npm install serialport --build-from-sourcenpm rebuild @serialport/bindings - 检查项目路径合法性
确认项目存放的全路径不存在中文、空格、特殊符号(如emoji、括号、非ASCII字符),原生模块编译对特殊路径兼容性极差,建议将项目移动到纯英文无空格的路径下(如C:\dev\arduino-serial-test)再重试安装。 - 校验Node.js架构匹配度
执行命令查看当前Node.js架构:
64位Windows系统需确保输出为node -p "process.arch"x64,若输出为ia32说明安装了32位Node.js,需更换为64位安装包后重试。 - 临时关闭安全软件后重试
部分杀毒软件、安全防护工具会误将编译生成的.node后缀二进制文件判定为风险文件并直接隔离,导致程序无法找到绑定文件,可临时关闭所有安全软件后重新执行安装命令。
内容的提问来源于stack exchange,提问作者Brad
相关产品推荐
相关产品推荐

