每当我安装软件包时都会出现此错误
发现 14 个漏洞(1 个低漏洞、1 个中漏洞、12 个高漏洞)运行 `npmauditfix` 来修复它们,或运行 `npmaudit` 了解详细信息
所以我发现我的一些 npm 包有一个易受攻击的版本
名为 tar
的依赖项。所以我现在需要做的就是将此包更新到更高版本 >= 4.4.2。
我手动更改了 package-lock.json
中所有 tar
依赖项的版本,并尝试运行以下命令
npm 我
npm 审核修复
npm 审核修复 --force
但 package-lock.json
会自行更新回之前的 tar
依赖项。我什至运行了 npm cache clean --force 并重复了上述命令,但结果相同。
有没有办法可以从命令行专门更新我的 node_modules
中的每个 tar
依赖项?
最佳答案
npm 审核修复
如果需要,可以通过将软件包版本更改为兼容版本来更改 package.json
,并且 package.json
定义 package-lock.json
中出现的可能版本。
因此,您无法通过重写 package-lock.json
来修复基于版本的漏洞,因为 npm install
rewrites package-lock.json
anyway .
npm 审核修复
将 package.json
中的版本重写为不存在漏洞的兼容版本。如果运行 npmauditfix
无法修复基于版本的漏洞问题,则必须使用 npmauditfix
眼中不完全兼容的版本/库来重构代码(在现实世界中,更改通常非常小)。您可以使用npm list
的帮助来获取需要无效版本tar
的依赖项的名称,并更改此包的版本。
关于node.js - 更新我的node_modules中某个包的每个存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56596170/