解决 npm i node-sass@4.12.0 安装失败异常 npm i node-sass异常解决
解决 npm i node-sass@4.12.0 安装失败异常 npm i node-sass异常解决
- 解决 npm i node-sass@4.12.0 安装失败异常 npm i node-sass异常解决
解决 npm i node-sass@4.12.0 安装失败异常 npm i node-sass异常解决
本地环境:node: 12.20.1
异常提示关键字:Python、C++、gyp编译问题
Traceback (most recent call last):File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\gyp_main.py", line 16, in <module>sys.exit(gyp.script_main())File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 545, in script_mainreturn main(sys.argv[1:])File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 538, in mainreturn gyp_main(args)File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 514, in gyp_mainoptions.duplicate_basename_check)File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\__init__.py", line 98, in Loadgenerator.CalculateVariables(default_variables, params)File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\generator\msvs.py", line 1916, in CalculateVariablesgenerator_flags.get('msvs_version', 'auto'))File "D:\java-works\yzwl\temp\node_modules\node-gyp\gyp\pylib\gyp\MSVSVersion.py", line 434, in SelectVisualStudioVersionversions = _DetectVisualStudioVersions(version_map[version], 'e' in version)
KeyError: '2022'
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (D:\java-works\yzwl\temp\node_modules\node-gyp\lib\configure.js:345:16)
gyp ERR! stack at ChildProcess.emit (events.js:314:20)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12)
gyp ERR! System Windows_NT 10.0.22631
gyp ERR! command "D:\\apps\\nvm\\nodejs\\node.exe" "D:\\java-works\\yzwl\\temp\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd D:\java-works\yzwl\temp\node_modules\node-sass
gyp ERR! node -v v12.20.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1
npm WARN temp@1.0.0 No description
npm WARN temp@1.0.0 No repository field.npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-sass@4.12.0 postinstall: `node scripts/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-sass@4.12.0 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
需要手动将 node-sass@4.12.0 依赖文件下载下来,存放到NPM缓存路径当中,这样执行 npm i的时候就直接可以从缓存里面安装,解决请求镜像源下载异常问题
node-sass@4.12.0对应的依赖下载地址: win32-x64-72_binding.node
默认的NPM缓存路径:C:\Users\用户\AppData\Roaming\npm-cache\
将依赖文件放到 npm-cache\node-sass\4.12.0
当中
通过CMD查询具体本机的NPM缓存路径:
# 查看当前 npm 缓存路径
npm config get cache
最后执行安装node-sass查看是否成功
npm i node-sass@4.12.0