NodeJS 版本管理方式
1, 事故背景
今天准备调试一个NodeJS 写的应用程序,结果怎么都不能
npm i 安装依赖; 报错信息:
F:\GPA\heracles-master>npm i npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@1, but package-lock.json was generated for lockfileVersion@2. I'll try to do my best with it! npm ERR! code EPERM npm ERR! syscall open npm ERR! path C:\Program Files\nodejs\node_cache\_cacache\tmp\b4e435fe npm ERR! errno -4048 npm ERR! Error: EPERM: operation not permitted, open 'C:\Program Files\nodejs\node_cache\_cacache\tmp\b4e435fe' npm ERR! [OperationalError: EPERM: operation not permitted, open 'C:\Program Files\nodejs\node_cache\_cacache\tmp\b4e435fe'] { npm ERR! cause: [Error: EPERM: operation not permitted, open 'C:\Program Files\nodejs\node_cache\_cacache\tmp\b4e435fe'] { npm ERR! errno: -4048, npm ERR! code: 'EPERM', npm ERR! syscall: 'open', npm ERR! path: 'C:\\Program Files\\nodejs\\node_cache\\_cacache\\tmp\\b4e435fe' npm ERR! }, npm ERR! isOperational: true, npm ERR! errno: -4048, npm ERR! code: 'EPERM', npm ERR! syscall: 'open', npm ERR! path: 'C:\\Program Files\\nodejs\\node_cache\\_cacache\\tmp\\b4e435fe' npm ERR! }
没有权限,于是用cmd - 管理员权限打开,再去执行上述命令,可以安装了,但是
于是,node 的版本,npm的版本需要升级了。
看了下版本号:
查了下,升级方式,https://developer.aliyun.com/article/369665; 然后发现 似乎不支持windows
只能去 官网下载Node 进行覆盖安装
2, NodeJs 管理
后续发现,无论如何都不行。Google 了一下这个错误:
报错解释“This version of npm is compatible with lockfileVersion@1, but package-lock.json was generated for lockfileVersion@2. I'll try to do my best with it!”
搜索Google 说,生成package-lock.json 的版本 和 npm的版本不一致导致的这个问题; 而且向上向下都不太兼容;
于是,搜了下NodeJs 的管理方式,有推荐 使用 NVM;https://juejin.cn/post/7094576504243224612
2.1 安装 NVM
去这个网站下载NVM https://github.com/coreybutler/nvm-windows/releases
然后装好以后,命令行这边进行 查询
===============
- nvm list
- nvm list installed
- nvm list available
Running version 1.1.10.
===============
2.2 安装老版本并且切换
然后再尝试就好了。