[英]How to use override in package.json to update child dependencies
我看到異步中的漏洞並想將其更新到3.2.2
如果我執行npm list async
,這就是依賴樹
└─┬ webpack-dev-server@4.8.1
└─┬ portfinder@1.0.28
└── async@2.6.4
因此,查看npmdocs我嘗試在 package.json 中添加覆蓋,如下所示。
{
"name": "some application",
"scripts": {...},
"dependencies": {...},
"overrides": {
"webpack-dev-server": {
"portfinder": {
"async": "3.2.2"
}
}
},
"devDependencies": {...}
}
但是當我執行npm install
時,它沒有將異步版本更新到 3.2.2,並且仍然在 pacakge-lock.json 中顯示舊版本。 我從 devDependencies 中刪除了 webpack-dev-server package 但在運行 npm 安裝后我在npm list async
上變空了
└── (empty)
知道我做錯了什么嗎?
您需要使用 NPM 版本 8.3.0 或更高版本才能“覆蓋”工作。 您可以查看以下 github 問題以獲取更多信息,
你已經把它倒過來了......你指定要覆蓋哪個依賴項的版本(例如async
),然后提供父母及其版本的版本或列表,所以它是這樣的:
"overrides": {
"async": "3.2.2"
},
或者如果是具體的:
"overrides": {
"async": {
"portfinder": "3.2.2"
}
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.