if not defined npm_config_node_gyp

96 阅读2分钟

前言:为了启动一个好几年前的项目太痛苦了,python用的2.7版本,node用的14版本

第一步 安装Python 2.7和Node 14

1、使用anaconda创建 python 2.7 环境

anaconda官网下载(www.anaconda.com/download)

image.png

image.png

2、使用nvm 安装node 14

nvm下载(github.com/coreybutler…)

image.png

第二步 使用anaconda命令行,切换到新建的python环境

系统中搜索Anaconda Prompt,以管理员身份运行

image.png

进去后默认是base,我们需要切到刚刚在anaconda navigator中创建的

image.png

第三步 npm i安装依赖包,但是出现没有npm_config_node_gyp问题

image.png

出现问题的原因:最新版本的 Microsoft Visual Studio 安装的npm_config_node_gyp版本,当前项目用不了

image.png

解决 npm_config_node_gyp 问题

输入命令安装

npm i -g node-gyp

image.png

第四步 再次npm i安装依赖包,但是依然报错

image.png

解决:

需要一个镜像地址安装windows-build-tools,原因:当前项目需要C++的编译环境

npm config set registry https://registry.npmmirror.com

image.png

发现下载不完

image.png

原因:在一开始我们就已经安装了python 2.7的环境,导致在安装windows-build-tools时,它会停止安装python2.7,连带停止安装vs_BuildTools.exe。因此需要手动安装

如何手动安装

它已经为我们提供了vs_BuildTools.exe的路径

image.png

在上述路径的文件夹中,双击vs_BuildTools.exe,等待一会儿安装完毕

image.png

image.png

第五步 再次npm i安装依赖包,就发现可以了

image.png

之后就正常执行运行命令就ok了

总结

1、安装 python2.7 和 node 14

2、使用 anaconda 切换到创建的 python 环境

3、解决 npm_config_node_gyp 问题,npm i -g node-gyp

4、当前项目需要 C++ 的编译环境,安装 windows-build-tools 解决

5、正常 npm i 后再 npm start

PS 补充

我在另外一个电脑中尝试(anaconda 创建的 python2.7 环境名称为 python27)

如果已经有了 vs_BuildTools.exe,双击安装好后 再输入 npm i -g node-gyp,最后 npm i 就完成了

image.png