簡體   English   中英

NPM 關於已棄用包的警告消息

[英]NPM warn message about deprecated package

我正在全局安裝一個模塊

$ npm install -g X

和 NPM 說

“npm WARN 已棄用 lodash@1.0.2:lodash@<3.0.0 不再維護。升級到 lodash@^4.0.0”

如何找出哪個模塊依賴於這個舊版本的 lodash?

來自 NPM 的警告消息似乎沒有讓我知道哪個模塊引用了這個舊版本(我相信模塊 X 沒有直接依賴於這個舊版本的 lodash。)。

我得到了類似問題的答案: https ://stackoverflow.com/a/36335866/1115187

簡要地:

npm outdated --depth=3

此命令將分析已安裝的 NPM 包及其版本。 該報告將包含:

  1. 包裹名字
  2. 最新版本
  3. 當前版本
  4. 依賴路徑(向下到depth級別)

希望這些信息可以幫助您收集有關過時軟件包的信息。

下一步 - 與適當包的維護者聯系,並要求他們更新包(也許,您想發送拉取請求)。

UPD:npm-檢查

有一個很棒的 npm 包: npm-check ,它允許檢查過時的依賴項。 大概

我最喜歡的功能:交互式更新——在項目文件夾中運行npm-check -u 交互式菜單顯示有關當前文件夾中依賴項的所有必需信息,並允許在 3 秒內更新所有依賴項。

npm la <package-name> 

也可以工作,並會為您提供有關依賴項的依賴關系圖的最詳細信息。

npm ls <package-name> ,做了類似的事情,但給你的細節更少

使用npm list 它將打印出你的模塊所依賴的所有包以及你的依賴關系等等。 也許將輸出重定向到文件或 grep 以便您可以更輕松地搜索它。

用這個

sudo npm install --unsafe-perm -g expo-cli

您可以搜索 node_modules 下的所有 package.json 文件,看看哪些依賴於 lodash 1.0.2。

對於不推薦使用的文件,您應該使用“npm i [package]”語法,在這種情況下,您應該使用:npm i X,它將獲取所有必要的包,包括不推薦使用的包,但這些包是您的安裝所必需的。

Npm 文檔鏈接: https ://docs.npmjs.com/using-deprecated-packages

暫無
暫無

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

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