使用npm安装依赖包时报错,解决办法
npm ERR! code 1 npm ERR! path F:\Awork\D\v1\lotus\node_modules\node-sass npm ERR! command failed npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/build.js npm ERR! Building: D:\nodejs\node.exe F:\Awork\D\v1\lotus\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library= npm ERR! gyp info it worked if it ends with ok npm ERR! gyp verb cli [ npm ERR! gyp verb cli 'D:\\nodejs\\node.exe', npm ERR! gyp verb cli 'F:\\Awork\\D\\v1\\lotus\\node_modules\\node-gyp\\bin\\node-gyp.js', npm ERR! gyp verb cli 'rebuild', npm ERR! gyp verb cli '--verbose', npm ERR! gyp verb cli '--libsass_ext=', npm ERR! gyp verb cli '--libsass_cflags=', npm ERR! gyp verb cli '--libsass_ldflags=', npm ERR! D:\nodejs\node_cache\_logs\2023-03-08T03_59_27_156Z-debug-0.log PS F:\Awork\D\v1\lotus> npm install --python=python2.7 npm WARN ERESOLVE overriding peer dependency npm WARN ERESOLVE overriding peer dependency npm WARN ERESOLVE overriding peer dependency npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility npm WARN deprecated kleur@2.0.2: Please upgrade to kleur@3 or migrate to 'ansi-colors' if you prefer the old syntax. Visit <https://github.com/lukeed/kleur/releases/tag/v3.0.0\> for migration path(s). npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained npm WARN deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142 npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained npm WARN deprecated eslint-loader@2.2.1: This loader has been deprecated. Please use eslint-webpack-plugin npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated npm WARN deprecated har-validator@5.1.5: this library is no longer supported npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated npm WARN deprecated chokidar@2.1.5: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor. npm WARN deprecated acorn-dynamic-import@3.0.0: This is probably built in to whatever tool you're using. If you still need it... idk npm WARN deprecated left-pad@1.3.0: use String.prototype.padStart() npm WARN deprecated microargs@1.1.2: This project has been renamed to @pawelgalazka/cli-args. Install using @pawelgalazka/cli-args instead npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported npm WARN deprecated sane@2.5.2: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added npm WARN deprecated microcli@1.3.3: This project has been renamed to @pawelgalazka/cli . Install using @pawelgalazka/cli instead npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address' npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. npm WARN deprecated babel-eslint@10.0.1: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates. npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142 npm WARN deprecated runjs@4.4.2: This project has been renamed to 'tasksfile'. Install using 'npm install tasksfile' instead. npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi' npm WARN deprecated axios@0.18.1: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410 npm WARN deprecated svgo@1.2.0: This SVGO version is no longer supported. Upgrade to v2.x.x. npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive security updates. Please upgrade asap. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. npm ERR! code 1 npm ERR! path F:\Awork\D\v1\lotus\node_modules\node-sass npm ERR! command failed npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/build.js npm ERR! Building: D:\nodejs\node.exe F:\Awork\D\v1\lotus\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library= npm ERR! gyp info it worked if it ends with ok npm ERR! gyp verb cli [ npm ERR! gyp verb cli 'D:\\nodejs\\node.exe', npm ERR! gyp verb cli 'F:\\Awork\\D\\v1\\lotus\\node_modules\\node-gyp\\bin\\node-gyp.js', npm ERR! gyp verb cli 'rebuild', npm ERR! gyp verb cli '--verbose', npm ERR! gyp verb cli '--libsass_ext=', npm ERR! gyp verb cli '--libsass_cflags=', npm ERR! gyp verb cli '--libsass_ldflags=', npm ERR! gyp verb cli '--libsass_library=' npm ERR! gyp verb cli ] npm ERR! gyp info using node-gyp@3.8.0 npm ERR! gyp info using node@16.14.0 | win32 | x64 npm ERR! gyp verb command rebuild [] npm ERR! gyp verb command clean [] npm ERR! gyp verb clean removing "build" directory npm ERR! gyp verb command configure [] npm ERR! gyp verb check python checking for Python executable "python2.7" in the PATH npm ERR! gyp verb `which` failed Error: not found: python2.7 npm ERR! gyp verb `which` failed at getNotFoundError (F:\Awork\D\v1\lotus\node_modules\which\which.js:13:12) npm ERR! gyp verb `which` failed at F (F:\Awork\D\v1\lotus\node_modules\which\which.js:68:19) npm ERR! gyp verb `which` failed at E (F:\Awork\D\v1\lotus\node_modules\which\which.js:80:29) npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\which\which.js:89:16 npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\isexe\index.js:42:5 npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\isexe\windows.js:36:5 npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21) npm ERR! gyp verb `which` failed python2.7 Error: not found: python2.7 npm ERR! gyp verb `which` failed at getNotFoundError (F:\Awork\D\v1\lotus\node_modules\which\which.js:13:12) npm ERR! gyp verb `which` failed at F (F:\Awork\D\v1\lotus\node_modules\which\which.js:68:19) npm ERR! gyp verb `which` failed at E (F:\Awork\D\v1\lotus\node_modules\which\which.js:80:29) npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\which\which.js:89:16 npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\isexe\index.js:42:5 npm ERR! gyp verb `which` failed at F:\Awork\D\v1\lotus\node_modules\isexe\windows.js:36:5 npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21) { npm ERR! gyp verb `which` failed code: 'ENOENT' npm ERR! gyp verb `which` failed } npm ERR! gyp verb could not find "python2.7". checking python launcher npm ERR! gyp verb could not find "python2.7". guessing location npm ERR! gyp verb ensuring that file exists: C:\Python27\python.exe npm ERR! gyp ERR! configure error npm ERR! gyp ERR! stack Error: Can't find Python executable "python2.7", you can set the PYTHON env variable. npm ERR! gyp ERR! stack at PythonFinder.failNoPython (F:\Awork\D\v1\lotus\node_modules\node-gyp\lib\configure.js:484:19) npm ERR! gyp ERR! stack at PythonFinder.<anonymous> (F:\Awork\D\v1\lotus\node_modules\node-gyp\lib\configure.js:509:16) npm ERR! gyp ERR! stack at callback (F:\Awork\D\v1\lotus\node_modules\graceful-fs\polyfills.js:306:20) npm ERR! gyp ERR! stack at FSReqCallback.oncomplete (node:fs:198:21) npm ERR! gyp ERR! System Windows_NT 10.0.22621 npm ERR! gyp ERR! command "D:\\nodejs\\node.exe" "F:\\Awork\\D\\v1\\lotus\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library=" npm ERR! gyp ERR! cwd F:\Awork\D\v1\lotus\node_modules\node-sass npm ERR! gyp ERR! node -v v16.14.0 npm ERR! gyp ERR! node-gyp -v v3.8.0 npm ERR! gyp ERR! not ok npm ERR! Build failed with error code: 1 npm ERR! A complete log of this run can be found in: npm ERR! D:\nodejs\node_cache\_logs\2023-03-08T06_59_14_750Z-debug-0.log
错误信息如上所示
试了好多种方法,设置权限、切换方式,还有是node-sass有问题的,也跟着弄了弄,还是不行
最后在知乎上找到一篇mm一半mm同学写的文章,降低了node版本,从16降到14,再运行就成功解决了
附上node历史版本记录下载地址:https://nodejs.org/zh-cn/download/releases/
原文地址:https://zhuanlan.zhihu.com/p/439571146
注:如有侵权请联系我删除