如何将Package.json中的每个依赖项更新为最新版本?

如何将Package.json中的每个依赖项更新为最新版本?

我从另一个项目中复制了Package.json,现在我想将所有的依赖项都添加到它们的最新版本,因为这是一个新的项目,如果它坏了,我不介意修复它。

做这件事最简单的方法是什么?

我现在所知道的最好的方法就是跑npm info express version然后手动更新Package.json。一定有更好的办法。

{
  "name": "myproject",
  "description": "my node project",
  "version": "1.0.0",
  "engines": {
    "node": "0.8.4",
    "npm": "1.1.65"
  },
  "private": true,
  "dependencies": {
    "express": "~3.0.3", // how do I get these bumped to latest?
    "mongodb": "~1.2.5",
    "underscore": "~1.4.2",
    "rjs": "~2.9.0",
    "jade": "~0.27.2",
    "async": "~0.1.22"
  }}

更新5/1/19六年后,我仍然坚持NPM-检查更新作为这个问题的综合解决方案。好好享受吧!


DIEA
浏览 2946回答 3
3回答

米脂

看上去NPM-检查更新是唯一能让这一切发生的方法。npm&nbsp;i&nbsp;-g&nbsp;npm-check-updates ncu&nbsp;-u npm&nbsp;install关于国家预防机制<3.11:只需将每个依赖项的版本更改为*,然后跑npm update --save. (注:&nbsp;在最近(3.11)版本的国家预防机制中被打破).之前:&nbsp;&nbsp;"dependencies":&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;"express":&nbsp;"*", &nbsp;&nbsp;&nbsp;&nbsp;"mongodb":&nbsp;"*", &nbsp;&nbsp;&nbsp;&nbsp;"underscore":&nbsp;"*", &nbsp;&nbsp;&nbsp;&nbsp;"rjs":&nbsp;"*", &nbsp;&nbsp;&nbsp;&nbsp;"jade":&nbsp;"*", &nbsp;&nbsp;&nbsp;&nbsp;"async":&nbsp;"*" &nbsp;&nbsp;}之后:&nbsp;&nbsp;"dependencies":&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;"express":&nbsp;"~3.2.0", &nbsp;&nbsp;&nbsp;&nbsp;"mongodb":&nbsp;"~1.2.14", &nbsp;&nbsp;&nbsp;&nbsp;"underscore":&nbsp;"~1.4.4", &nbsp;&nbsp;&nbsp;&nbsp;"rjs":&nbsp;"~2.10.0", &nbsp;&nbsp;&nbsp;&nbsp;"jade":&nbsp;"~0.29.0", &nbsp;&nbsp;&nbsp;&nbsp;"async":&nbsp;"~0.2.7" &nbsp;&nbsp;}当然,这是更新依赖关系的钝锤。如果-就像你说的-这个项目是空的,什么也不能破。另一方面,如果您是在一个更成熟的项目中工作,您可能希望在升级之前验证您的依赖项中没有发生破坏性的更改。要查看哪些模块过时,只需运行npm outdated..它将列出所有安装的依赖项,这些依赖项具有较新的可用版本。
打开App,查看更多内容
随时随地看视频慕课网APP