问题描述

将公司项目代码拉到本地,在VSCode终端运行“npm install”命令后输出报错

最新补充

最近换电脑重新搭建开发环境,跑已有的vue项目时又出现了node-sass报错,这次本杂鱼发现了根本原因:node版本和node-sass版本需要匹配…具体可参考:
node-sass一直安装不上、安装失败的原因分析
npm install 报错 ERR! gyp ERR! cwd D:\workspace\node_modules\node-sass错误解决/npm ERR! gyp verb `which` failed Error: not found: python2

此外,再记录两个有参考价值的链接:
vscode命令行执行npm报错解决
windows系统使用nvm实现多版本node切换

2024/11/29补充

今天拉了一个新项目,愉快地npm install,结果过了好久命令行还在输出,定睛一看:原来进入了python报错鬼打墙?!(见下图)
gyp verb could not find "D:\programFiles\Python24\python2.EXE". checking python launcher
报错信息显示找不到python.exe,但是(明明就有这个python.exe啊喂!!!):
python.exe
于是追根溯源,发现真正的报错原因是下载node-sass相关的文件失败:
下载失败
可以通过其他途径下载对应的文件,放在电脑的“C:\Users\用户名\AppData\Roaming\npm-cache\node-sass\对应的版本”目录下,然后重新npm install就不会再报错啦~
本杂鱼将自己本地的node-sass文件上传到了自己的demo项目:myDemos的nodeSass分支,有需要的小伙伴自行下载嗷▓░ω▓░
node-sass包路径

以下内容为最初记录,现在来看没有太多参考价值啦,个人原因还是保留一下~

解决过程

  1. 求助度娘
    尝试了网络上的解决方案,主要思路是全局安装node-sass,但在我个人的环境下没有奏效

  2. 个人的解决方法
    在请教其他同事后,发现可能是我安装的nodejs版本过高的原因(V16.15.0),
    在卸载并重新安装了V10.15.0的nodejs(需要下载其他版本的nodejs只需修改这个url中对应的版本号)
    后,在我个人的环境下解决了“npm install”执行报错问题

补充

运行vue程序后依然因某些包的版本不对而报错(不指定版本号时一般默认安装的都是最高版本),可以尝试卸载原有的包并重新安装较低版本的包:

  • 方法一:通过命令行重装
:: 在命令行执行
npm uninstall `版本过高的包的名称` --save :: 卸载已经安装的版本过高的包
npm install `版本过高的包的名称`@`较低的版本号` --save  :: 安装较低版本的包
  • 方法二:修改配置重装
    在项目的package.json中找到版本过高的包,将配置的版本号改低,删除项目目录下的node_modules文件夹(删掉全部包的话,重新执行npm install用时可能很久,可以只把相关的包删除),再在命令行执行npm install

如果试了一个较低的版本后依然有问题,大概率是需要更低的版本。。遇到问题不要怕折腾,多尝试总会有办法的!^_^

总结

vue开发中,各种包的版本号非常重要……感觉很多错误来源于版本问题,需多留意

参考网址

[1] node-sass一直安装不上、安装失败的原因分析
[2] npm install 报错 ERR! gyp ERR! cwd D:\workspace\node_modules\node-sass错误解决/npm ERR! gyp verb `which` failed Error: not found: python2
[3] vscode命令行执行npm报错解决
[4] windows系统使用nvm实现多版本node切换

GitHub 加速计划 / no / node-sass
3
0
下载
:rainbow: Node.js bindings to libsass
最近提交(Master分支:3 个月前 )
6081731a Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> 10 个月前
62c0f46c Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> 10 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐