Sylius项目中安装node-sass失败求助
解决Sylius安装中node-sass安装失败的问题
核心报错原因
从日志可定位问题:
- 你使用的node-gyp@3.8.0为旧版本,仅支持Python2语法,但系统安装的是Python3.9,执行
print "%s.%s.%s" % sys.version_info[:3]触发Python3语法错误 - 旧版node-sass与当前Node.js 16.10.0兼容性差,且node-sass已被官方废弃
解决方案
方案1:替换node-sass为sass(推荐,长期有效)
node-sass已停止维护,官方推荐使用dart-sass(npm包名为sass)替代:
- 清理现有依赖残留:
rm -rf node_modules package-lock.json yarn.lock npm cache clean --force
- 在项目根目录
package.json中添加overrides字段,强制替换所有依赖中的node-sass:
{ "overrides": { "node-sass": "npm:sass@^1.60.0" } }
- 重新执行安装:
yarn install # 或使用npm npm install
方案2:临时适配Python版本(不推荐,Python2已停止维护)
若必须使用旧版node-sass,可指定node-gyp使用Python2.7:
- 安装Python2.7并添加至系统PATH
- 执行安装时指定Python路径:
npm install node-sass --python=C:\Python27\python.exe # 或全局配置node-gyp的Python版本 npm config set python C:\Python27\python.exe
方案3:升级node-gyp版本
手动升级项目中的node-gyp以支持Python3:
npm install node-gyp@latest --save-dev
之后重新执行安装命令。
内容的提问来源于stack exchange,提问作者Chadizar Royland
相关产品推荐
相关产品推荐

