npm 报错 gyp verb `which` failed Error: not found: python2 解决方案

一、背景

npm 安装依赖报如下错:

bash 复制代码
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2

一眼看过去都觉得是Python环境问题,其实并不是你python环境问题,我也被这里坑了半天,对这种比较有影响力的依赖库这种报错误导,真的无力吐槽下,做的很不严谨。

二、产生错误原因

在前端开发中,node-sass 是一个常用的工具,但不少开发者在安装它时常常遇到各种问题。这里其实是 node-sass 和node版本不兼容原因导致,当时开发者的可能用的比较低的node版本,而你用的比较新的node版本

三、解决方案

3.1 切换到 sass 或 dart-sass

最简单的解决方案是将项目依赖从 node-sass 切换到 sass,它是纯 JavaScript 实现,兼容性更好,安装更方便。(官方推荐)

将原项目中的node-sass更换为sass

安装命令:

bash 复制代码
npm i sass

3.2 切换Node对应版本下载

如果必须使用 node-sass,请确保 Node.js 版本兼容

安装特定版本的 Node.js:

bash 复制代码
nvm install 14.17.0
nvm use 14.17.0
npm i node-sass
相关推荐
仿生狮子4 小时前
OpenAI 攻下千禧年难题之后,开发者似乎无动于衷
前端·数学·vibecoding
Lvan的前端笔记7 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
三天不学习8 小时前
Egg.js 4 突然爆火,原因是否归结于AI 原生落地需求爆发?
前端·javascript·全栈·egg.js
xcs194059 小时前
前端 vue 的前端页面debugger 进不去
前端·javascript·vue.js
明月_清风9 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
Csvn10 小时前
框架性能优化
前端
回眸&啤酒鸭12 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
用户693717500138412 小时前
2026,程序员的时代拐点到了
android·前端·后端
大龄秃头程序员12 小时前
一次 iBeacon + BLE 无感解锁方案的实现记录
前端
小兔子12 小时前
Python 的 GIL 与 free-threading:3.13 之后「去 GIL」走到哪一步了
前端