首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Npm update不安装最新的包版本?

Npm update不安装最新的包版本?
EN

Stack Overflow用户
提问于 2020-03-25 22:17:06
回答 2查看 387关注 0票数 0

当我安装时

npm i nodemon

当然,我得到的总是最后一个版本,在本例中是: 2.0.2,

但是如果我安装了一些较旧的版本,例如npm I nodemon@1.18.11,然后我尝试npm update,我得到的是1.19.4版本,而不是最新的2.0.2版本

就像我使用npm install nodemon一样。

为什么在这种情况下npm更新没有更新到2.0.2?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-25 22:28:58

这取决于npm的版本,但如果npm update破坏了一个或多个依赖项,它就不会获得更新的、主要版本的包。实际上,你被困在了1.x版本上。您可以轻松地使用npm i foo来获取最新版本,而不是带有警告。基于您正在使用的npm版本(以及如何获得以前的行为),请参阅https://docs.npmjs.com/cli-commands/update.html以了解更多详细信息。

票数 1
EN

Stack Overflow用户

发布于 2020-03-25 22:37:31

这取决于nodemon的package.json条目。

例如,如果一个模块具有以下依赖关系:

代码语言:javascript
复制
{
  "dist-tags": { "latest": "1.2.2" },
  "versions": [
    "1.2.2",
    "1.2.1",
    "1.2.0",
    "1.1.2",
    "1.1.1",
    "1.0.0",
    "0.4.1",
    "0.4.0",
    "0.2.0"
  ]
}

并在package.json文件中指定'^‘:

代码语言:javascript
复制
"dependencies": {
  "module": "^1.1.1"  //npm update will install module@1.2.2, because 1.2.2 is latest and 1.2.2 satisfies ^1.1.1
}

或者如果您的版本是使用'~‘指定的,如下所示:

代码语言:javascript
复制
"dependencies": {
  "module": "~1.1.1" // npm update will install dep1@1.1.2. Even though the latest tag points to 1.2.2, this version does not satisfy ~1.1.1, which is equivalent to >=1.1.1 <1.2.0. So the highest-sorting version that satisfies ~1.1.1 is used, which is 1.1.2
}

要了解更多信息,请参阅以下文档:https://docs.npmjs.com/cli-commands/update.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60850684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档