首次通过NPM安装Truffle正常,第二次重装时报错如何解决?
报错核心原因
npm的脚本执行shell配置错误,Mac设备下错误配置了Windows系统的Git Bash路径,导致安装bufferutil依赖时无法找到对应执行文件触发报错。
解决步骤
- 首先检查当前npm的shell配置,执行命令:
npm config get script-shell
如果返回结果为C:\Program Files (x86)\git\bin\bash.exe,即可确认是配置错误导致的问题。 - 重置npm的shell配置,执行命令:
npm config delete script-shell
如果需要手动指定Mac下的默认shell,可根据日常使用的终端类型二选一执行:npm config set script-shell /bin/bash
或npm config set script-shell /bin/zsh - 清理npm残留缓存,执行命令:
npm cache clean --force
如果此前是在本地项目目录安装truffle,还需要删除当前目录下的node_modules文件夹和package-lock.json文件。 - 重新执行全局truffle安装命令即可:
npm install -g truffle
如果遇到权限报错,Mac设备可在命令前加sudo提权,更推荐使用nvm管理Node.js版本,可避免全局安装权限问题。
备选方案
如果调整配置后仍然报错,可尝试安装时跳过脚本执行,命令如下:npm install -g truffle --ignore-scripts
该方法可以绕过bufferutil的编译步骤,truffle的核心功能不受影响。
内容的提问来源于stack exchange,提问作者CoderJJB
相关产品推荐
相关产品推荐

