升级Windows后无法安装node-sass,寻求技术解决方案
Windows升级后node-sass安装失败的解决方法
问题情况
升级Windows系统后,安装node-sass时持续报错,但其他npm包均可正常安装。已尝试添加Python和Node环境变量、安装Visual Build Tools、更换Python版本、迁移Node安装目录等方法,均未解决问题。
报错日志(翻译后)
E:\Programming\ME\Dibaji_Agency\MainSite>npm i node-sass npm 警告 @npmcli/move-file@1.1.2 已废弃:该功能已迁移到@npmcli/fs npm 警告 har-validator@5.1.5 已废弃:此库不再维护 npm 警告 uuid@3.4.0 已废弃:请升级到7.x及以上版本。旧版本在某些场景下会使用Math.random(),存在已知问题。 npm 警告 request@2.88.2 已废弃:request已停止维护 npm 错误!代码 1 npm 错误!路径 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-sass npm 错误!命令执行失败 npm 错误!命令:C:\Windows\system32\cmd.exe /d /s /c node scripts/build.js npm 错误!正在构建:C:\Program Files\nodejs\node.exe E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library= npm 错误!gyp信息:执行完成后显示ok即为成功 npm 错误!gyp详细命令行参数:[ npm 错误!gyp详细命令行参数 'C:\\Program Files\\nodejs\\node.exe', npm 错误!gyp详细命令行参数 'E:\\Programming\\ME\\Dibaji_Agency\\MainSite\\node_modules\\node-gyp\\bin\\node-gyp.js', npm 错误!gyp详细命令行参数 'rebuild', npm 错误!gyp详细命令行参数 '--verbose', npm 错误!gyp详细命令行参数 '--libsass_ext=', npm 错误!gyp详细命令行参数 '--libsass_cflags=', npm 错误!gyp详细命令行参数 '--libsass_ldflags=', npm 错误!gyp详细命令行参数 '--libsass_library=' npm 错误!gyp详细命令行参数 ] npm 错误!gyp信息:使用node-gyp版本@8.4.1 npm 错误!gyp信息:使用node版本@18.12.1 | win32 | x64 npm 错误!gyp详细命令:rebuild [] npm 错误!gyp详细命令:clean [] npm 错误!gyp详细信息:正在删除"build"目录 npm 错误!gyp详细命令:configure [] npm 错误!gyp详细信息:使用下载地址https://npm.taobao.org/dist npm 错误!gyp详细信息:检查Python路径,从命令行或npm配置中读取 npm 错误!gyp详细信息:"--python="或"npm config get python"返回的路径是"/path/to/executable/python" npm 错误!gyp详细信息:尝试执行"/path/to/executable/python"获取可执行文件路径 npm 错误!gyp详细信息:"/path/to/executable/python"不在PATH中或执行出错 npm 错误!gyp详细信息:未从环境变量PYTHON中获取到Python路径 npm 错误!gyp详细信息:尝试检查是否可用"python3" npm 错误!gyp详细信息:执行"python3"获取可执行文件路径 npm 错误!gyp详细信息:"python3"不在PATH中或执行出错 npm 错误!gyp详细信息:尝试检查是否可用"python" npm 错误!gyp详细信息:执行"python"获取可执行文件路径 npm 错误!gyp详细信息:"python"不在PATH中或执行出错 npm 错误!gyp详细信息:尝试检查Python是否在C:\Users\Parham\AppData\Local\Programs\Python\Python39\python.exe npm 错误!gyp详细信息:执行"C:\Users\Parham\AppData\Local\Programs\Python\Python39\python.exe"获取版本 npm 错误!gyp详细信息:版本为"3.9.12" npm 错误!gyp信息:找到Python版本3.9.12,路径为"C:\Users\Parham\AppData\Local\Programs\Python\Python39\python.exe" npm 错误!gyp详细信息:未指定--target版本,使用当前node版本:18.12.1 npm 错误!gyp详细命令:install [ '18.12.1' ] npm 错误!gyp详细信息:使用下载地址https://npm.taobao.org/dist npm 错误!gyp详细信息:安装版本字符串为"18.12.1" npm 错误!gyp详细信息:正在安装版本:18.12.1 npm 错误!gyp详细信息:已传递--ensure参数,若已安装则不重新安装 npm 错误!gyp详细信息:版本已安装,检查"installVersion" npm 错误!gyp详细信息:当前"installVersion"为9 npm 错误!gyp详细信息:需要"installVersion"为9 npm 错误!gyp详细信息:版本符合要求 npm 错误!gyp详细信息:目标node版本已安装:18.12.1 npm 错误!gyp详细信息:尝试创建构建目录:E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-sass\build npm 错误!gyp详细信息:"build"目录需要创建?是 npm 错误!gyp详细信息:从命令行或npm配置中读取msvs_version npm 错误!gyp详细信息:寻找Visual Studio 2022版本 npm 错误!gyp详细信息:未设置VCINSTALLDIR,未在VS命令提示符中运行 npm 错误!gyp详细信息:无法通过PowerShell找到Visual Studio 2017或更新版本,可尝试添加'--loglevel silly'参数获取更多详情 npm 错误!gyp详细信息:寻找Visual Studio 2015版本 npm 错误!gyp详细信息:未找到 npm 错误!gyp详细信息:不再寻找VS2013,因为它仅支持Node.js 8及以下版本 npm 错误!gyp错误!寻找VS npm 错误!gyp错误!寻找VS:从命令行或npm配置中读取msvs_version npm 错误!gyp错误!寻找VS:寻找Visual Studio 2022版本 npm 错误!gyp错误!寻找VS:未设置VCINSTALLDIR,未在VS命令提示符中运行 npm 错误!gyp错误!寻找VS:无法通过PowerShell找到Visual Studio 2017或更新版本,可尝试添加'--loglevel silly'参数获取更多详情 npm 错误!gyp错误!寻找VS:寻找Visual Studio 2015版本 npm 错误!gyp错误!寻找VS:未找到 npm 错误!gyp错误!寻找VS:不再寻找VS2013,因为它仅支持Node.js 8及以下版本 npm 错误!gyp错误!寻找VS npm 错误!gyp错误!寻找VS:有效的msvs_version版本: npm 错误!gyp错误!寻找VS npm 错误!gyp错误!寻找VS ************************************************************** npm 错误!gyp错误!寻找VS:你需要安装最新版本的Visual Studio npm 错误!gyp错误!寻找VS:包含"使用C++的桌面开发"工作负载。 npm 错误!gyp错误!寻找VS:更多信息请查看相关文档 npm 错误!gyp错误!寻找VS ************************************************************** npm 错误!gyp错误!寻找VS npm 错误!gyp错误!配置错误 npm 错误!gyp错误!堆栈信息:Error: 找不到可用的Visual Studio安装 npm 错误!gyp错误!堆栈信息 在 VisualStudioFinder.fail (E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\find-visualstudio.js:122:47) npm 错误!gyp错误!堆栈信息 在 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\find-visualstudio.js:75:16 npm 错误!gyp错误!堆栈信息 在 VisualStudioFinder.findVisualStudio2013 (E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\find-visualstudio.js:363:14) npm 错误!gyp错误!堆栈信息 在 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\find-visualstudio.js:71:14 npm 错误!gyp错误!堆栈信息 在 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\find-visualstudio.js:384:16 npm 错误!gyp错误!堆栈信息 在 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\util.js:54:7 npm 错误!gyp错误!堆栈信息 在 E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-gyp\lib\util.js:33:16 npm 错误!gyp错误!堆栈信息 在 ChildProcess.exithandler (node:child_process:420:5) npm 错误!gyp错误!堆栈信息 在 ChildProcess.emit (node:events:513:28) npm 错误!gyp错误!堆栈信息 在 maybeClose (node:internal/child_process:1091:16) npm 错误!gyp错误!系统:Windows_NT 10.0.19045 npm 错误!gyp错误!命令:"C:\\Program Files\\nodejs\\node.exe" "E:\\Programming\\ME\\Dibaji_Agency\\MainSite\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library=" npm 错误!gyp错误!当前工作目录:E:\Programming\ME\Dibaji_Agency\MainSite\node_modules\node-sass npm 错误!gyp错误!node版本:v18.12.1 npm 错误!gyp错误!node-gyp版本:v8.4.1 npm 错误!gyp错误!执行失败 npm 错误!构建失败,错误代码:1 npm 错误!本次运行的完整日志可在以下路径查看: npm 错误! C:\Users\Parham\AppData\Local\npm-cache\_logs\2022-11-09T01_13_37_687Z-debug-0.log
解决步骤
1. 修复Python路径配置
当前npm配置里的Python路径是无效占位符,手动指定正确路径:
npm config set python C:\Users\Parham\AppData\Local\Programs\Python\Python39\python.exe
2. 手动指定Visual Studio版本
如果已安装Visual Build Tools,告诉node-gyp使用对应版本(以VS2022为例):
npm config set msvs_version 2022
若安装的是其他版本,替换为对应版本号(如2019)。
3. 清理缓存后重新安装
清理npm缓存和残留文件后重试:
npm cache clean --force rmdir /s /q node_modules && del package-lock.json npm install node-sass
4. 改用dart-sass替代node-sass
node-sass已停止维护,对高版本Node兼容性差,直接替换为dart-sass:
npm uninstall node-sass npm install sass
项目中sass相关代码无需修改,dart-sass完全兼容node-sass的API。
内容的提问来源于stack exchange,提问作者Parham
相关产品推荐
相关产品推荐

