已安装npm 7.1.1,如何将期望版本设为>7.0消除过时提示?
解决npm全局过时检查显示期望版本为6.x的问题
我来帮你搞定这个问题!你遇到的情况其实和npm的版本标签机制有关,下面一步步给你说清楚原因和解决办法:
问题根源
npm的版本发布有不同的标签区分:latest是官方标记的稳定版,next是预发布/测试版。你安装的npm@7.1.1当时属于next标签的版本,而npm outdated -g默认会对比latest标签的版本(也就是当时的6.x稳定系列),所以才会出现明明装了7.x,却提示期望版本是6.x的情况。
解决办法
方法一:全局配置npm使用next标签检查更新
如果你希望全局包检查时都以next标签的版本作为最新基准(适合跟进npm的最新测试版本),运行这条命令:
npm config set default-tag next -g
之后再执行npm outdated -g,就会以7.x及以上版本作为期望版本,不会再显示6.x的提示了。
方法二:单独给npm包设置版本范围
如果你只想针对npm自身调整版本要求,不影响其他全局包,可以这么做:
- 先找到全局npm的安装目录:
输出类似npm root -g/usr/local/lib/node_modules(Windows系统可能是C:\Users\你的用户名\AppData\Roaming\npm\node_modules) - 进入该目录下的
npm文件夹,打开package.json文件 - 在文件里添加或修改
engines字段,指定npm的版本要求:
保存文件后,再运行"engines": { "npm": ">7.0.0" }npm outdated -g就不会再出现npm的6.x版本提示了。
方法三:升级到标记为latest的7.x正式版
当npm官方把7.x系列正式标记为latest稳定版后,你可以直接运行这条命令安装正式版:
npm install -g npm@latest
此时npm outdated -g就会自动以最新的7.x+版本作为期望,自然不会再显示6.x的提示。
内容的提问来源于stack exchange,提问作者user12547712
相关产品推荐
相关产品推荐

