nvm for windows 安装低版本 node 丢失 npm 安装
nvm for windows 安装低版本 node 丢失 npm 安装
最近换了工作,又开始接触各种祖传屎山。有一个仓库需要 node12 版本,目前已经发展到 node22 了,多个项目之间的 node 不一样,习惯 windows 开发,所以需要装下 nvm windwos 版本。
但是陈旧的包似乎已经损坏,我在安装 node12,node14 都无法正确安装 npm 包,导致丢失 npm 命令。
然后找到 issue Error installing NodeJS 14.19.2 with npm version 6.14.17 #799,里面介绍了一种骇客的安装。因为安装过程只是丢失了 npm,所以自行下载对应版本的 npm 包进行安装即可。注意,这里需要对齐 node 和 npm 的包版本,不然会容易出现下面的错误:
npm ERR!cb.apply is not a function
版本对齐看其他人有写 node与npm版本对应表,自行查阅。
下载地址看这里到 镜像源 找,具体格式如下:
https://registry.npmmirror.com/binary.html?path=npm/<version>/
ex:
https://registry.npmmirror.com/binary.html?path=npm/v6.14.16/
windows 系统记得下载 zip 包。
然后开始替换,前往 nvm 的根路径:
PS C:\Users\admin> nvm root
Current Root: C:\Users\admin\AppData\Local\nvm
PS C:\Users\admin> explorer C:\Users\admin\AppData\Local\nvm
然后,打开对应版本的 node 文件夹:
- 解压 npm zip 包内容到
nvm-root/<node-version>/node_modules/npm
这个路径下 - npm 文件夹下有两个文件,
npm
和npm.cmd
,把这两个文件复制一份到nvm-root/<node-version>
文件夹下
ok,然后重新切入到这个 node 版本,即可验证是否成功:
nvm off
nvm use 12 # <version>
npm -v