vue安装node-sass检查python2.7.exe问题
问题描述
项目中package.json中有配置依赖node-sass,在npm i下载依赖过程中,报错:
npm ERR! gyp verb
whichfailed Error: not found: python2.7
问题原因
根本原因
node-sass的代码主要是C++实现,运行node-sass需要进行编译后再运行,而python可以为node-sass提供运行时编译环境,所以正常情况下下载node-sass源代码同时会检查python的安装,确保正常运行的环境
其他可能原因
1、下载的node-sass为c++源码版本
2、nodejs与sass版本不匹配
3、软件安装问题等其他原因
解决方案
(问题一)下载的node-sass为c++源码版本
下载已进行预编译的依赖包,处理方式:
在项目根目录下执行以下命令,将node-sass的下载目录指向预编译包目录
npm config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass
(问题二)nodejs与sass版本不匹配
调整package.json中node-sass版本
node与node-sass版本对应表
node版本查看命令:node -v
node版本 | node-sass版本 |
---|---|
node<8 | <5.0 |
node8 | 4.5.3+,<5.0 |
node10 | 4.9+,<5.0 |
node11 | 4.10+,<5.0 |
node12 | 4.12+ |
node13 | 4.13+,<5.0 |
node 14 | 4.14+ |
node 15 | 5.0+ |
node 16 | 6.0+ |
sass-loader与node-sass版本对应表
sass-loader版本 | node-sass版本 |
---|---|
sass-loader 4.1.1 | node-sass 4.3.0 |
sass-loader 7.0.3 | node-sass 4.7.2 |
sass-loader 7.3.1 | node-sass 4.7.2 |
sass-loader 7.3.1 | node-sass 4.14.1 |
sass-loader 10.0.1 | node-sass 6.0.1 |
(问题三)软件安装问题等其他原因
1、尝试重新安装node或更新node版本
2、如果还不行可尝试安装对应python版本
如有其它情况或解决方案,欢迎补充~