簡體   English   中英

為什么 npm 安裝的依賴版本與 package-lock.json 中指定的依賴版本不同?

[英]Why npm installs different version of dependency from what is specified in package-lock.json?

節點-v
v17.2.0

npm -v
8.1.4

package.json

{
  "name": "untitled",
  "version": "0.0.0",
  "private": true,
  "devDependencies": {
    "stylelint": "^14.1.0"
  }
}

npm i
npm 列表 postcss

/* Output:
└─┬ stylelint@14.1.0
  ├─┬ postcss-safe-parser@6.0.0
  │ └── postcss@8.4.4 deduped
  └── postcss@8.4.4 (why is here version 8.4.4 ???)
*/

Stylelint repository main branch release 14.1.0 package.json postcss dependency: https://github.com/stylelint/stylelint/blob/fcd5ac1ffa4f2ad1f06cb2277aad035ffe309ccc/package.json#L135 is 8.3.11

所以,問題是:為什么 npm 在安裝 8.3.11 的時候卻安裝了 8.4.4 版本? 我錯過了什么嗎?

您鏈接中的 postcss 版本是^8.3.11 插入符號表示“與版本兼容”,並將更新您到最新的次要 + 補丁版本。 請參閱npm 文檔

另外,請注意:這是package.json而不是package-lock.json ,它確實將您鎖定到特定的 major.minor.patch 版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM