如何在Windows 11上忽略平台限制安装array-gpio包?
解决方法
强制忽略平台限制+跳过脚本编译
直接执行这条命令,npm会强制忽略平台不匹配的EBADPLATFORM错误,同时跳过gyp编译脚本:npm install array-gpio --force --ignore-scripts临时修改包的平台限制
- 先把包的源码拉到本地:
npm fetch array-gpio,会下载一个.tgz压缩包 - 解压这个压缩包,编辑里面的
package.json,删掉os和cpu字段(或者把win32/x64加入允许列表) - 在项目里安装修改后的本地包:
npm install ./path/to/unpacked-array-gpio
- 先把包的源码拉到本地:
用package.json的overrides长期兼容
在你项目根目录的package.json里添加以下配置,强制覆盖array-gpio的平台限制:"overrides": { "array-gpio": { "os": ["win32", "linux"], "cpu": ["x64", "arm", "arm64"] } }之后执行
npm install --ignore-scripts就能正常安装,后续更新依赖也能保持这个兼容设置。TypeScript项目可选方案
如果用TypeScript开发,可单独安装对应类型包(若存在)npm install @types/array-gpio --save-dev,或者自己编写简单的.d.ts类型文件,不用安装实际包也能完成代码提示和集成,部署到树莓派时再安装原版array-gpio。
内容的提问来源于stack exchange,提问作者Gipyo.Choi
相关产品推荐
相关产品推荐

