node-sass安装依赖失败

发布时间 2023-08-11 05:03:21作者: Amnesia_999

报错如下:

npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli   'C:\\Program Files\\nodejs\\node.exe',
npm ERR! gyp verb cli   'E:\\master\\bo\\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@18.17.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" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python2
npm ERR! gyp verb `which` failed     at getNotFoundError (E:\master\bo\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (E:\master\bo\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (E:\master\bo\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp verb `which` failed  python2 Error: not found: python2
npm ERR! gyp verb `which` failed     at getNotFoundError (E:\master\bo\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (E:\master\bo\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (E:\master\bo\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21) {
npm ERR! gyp verb `which` failed   code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp verb check python checking for Python executable "python" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python
npm ERR! gyp verb `which` failed     at getNotFoundError (E:\master\bo\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (E:\master\bo\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (E:\master\bo\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp verb `which` failed  python Error: not found: python
npm ERR! gyp verb `which` failed     at getNotFoundError (E:\master\bo\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (E:\master\bo\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (E:\master\bo\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at E:\master\bo\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (node:fs:210:21) {
npm ERR! gyp verb `which` failed   code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp verb could not find "python". checking python launcher
npm ERR! gyp verb could not find "python". 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 "python", you can set the PYTHON env variable.
npm ERR! gyp ERR! stack     at PythonFinder.failNoPython (E:\master\bo\node_modules\node-gyp\lib\configure.js:484:19)
npm ERR! gyp ERR! stack     at PythonFinder.<anonymous> (E:\master\bo\node_modules\node-gyp\lib\configure.js:509:16)
npm ERR! gyp ERR! stack     at callback (E:\master\bo\node_modules\graceful-fs\polyfills.js:306:20)
npm ERR! gyp ERR! stack     at FSReqCallback.oncomplete (node:fs:210:21)
npm ERR! gyp ERR! System Windows_NT 10.0.22621
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "E:\\master\\bo\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd E:\master\bo\node_modules\node-sass
npm ERR! gyp ERR! node -v v18.17.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: C:\Users\zheng\AppData\Local\npm-cache\_logs\2023-08-10T20_38_16_065Z-debug-0.log

解决方案:

1.安装python(已安装的可跳过这一步)

下载地址:Download Python | Python.org

check python checking for Python executable "python2" in the PATH

虽然提示说的是 python2,但我安装了Python 3.10.11,正常执行命令

2.执行如下命令

npm install -g node-gyp
npm uninstall node-sass
npm i

3.如果还是不行,试试执行以下命令

npm install --global windows-build-tools