9

我对 package.json 有一个私有依赖,它应该始终安装最新版本。所以不是版本,而是*.

"dependencies": {
   "@user/package": "*"
}

在 npmjs 中更新软件包后,它仍然安装旧版本,npm i如果我输入确切的版本号而不是*- 它会安装一个新版本,该版本像一天前一样发布。

一分钟前在 npmjs 更新版本时我遇到了类似的问题,但现在 npmjs 缓存应该过期并使用新版本更新,不是吗?

如何避免此类问题并始终获得所有内容的最新版本*

我试过了npm cache verify npm cache clean --force。没运气。

4

2 回答 2

5

您可以尝试使用 packagename@latest 关键字进行安装,但据我所知,您只能在命令行界面中通过 npm install --save 使用此关键字。

npm install --save mypackage@latest

在阅读了此处的文档https://docs.npmjs.com/files/package.json后, 我发现您可以在 package.json 文件中编写“最新”而不是任何版本号。这应该可以解决问题。

于 2017-11-20T12:42:29.977 回答
5

即使在初始安装依赖项期间,也需要使用npm update而不是npm install.

这个问题更多地谈论npm installvsnpm update

npm install 与 update - 有什么区别?

结论:唯一的大区别是已经安装的带有模糊版本控制的模块......

  • 被 npm install 忽略
  • 由 npm update 更新

感谢 CodeCaster 提供正确命令的链接。但:

问题仍然存在。大多数时候,它每次都有效。但。当 npm 没有解析到最新版本时,刚刚进行了另一个更新。现在将值形式转换*为数字。对我来说似乎是一个错误。

于 2017-11-20T12:49:45.773 回答