更新我的node_modules中某个软件包的所有存在

时间:2019-06-14 10:21:24

标签: node.js npm node-modules

每次安装软件包时都会出现此错误

found 14 vulnerabilities (1 low, 1 moderate, 12 high) run `npm audit fix` to fix them, or `npm audit` for details

所以我发现我的某些npm软件包具有易受攻击的版本 相依性称为tar。因此,我现在要做的就是将此软件包更新为更高的版本> = 4.4.2。

我在tar中手动更改了所有package-lock.json依赖项的版本,并尝试运行以下命令 npm i npm audit fix npm audit fix --force 但是package-lock.json会自动更新回先前的tar依赖关系。我什至运行了npm cache clean --force并重复了上述命令,但结果相同。

是否可以通过命令行专门更新tar中的每个node_modules依赖项?

1 个答案:

答案 0 :(得分:0)

npm audit fix通过将软件包版本更改为兼容版本来更改package.jsonpackage.json定义了出现在package-lock.json中的可能版本。

因此,您无法通过重写package-lock.json来修复基于版本的漏洞,因为npm install rewrites package-lock.json anyway

npm audit fixpackage.json中的版本重写为没有漏洞的兼容版本。如果运行npm audit fix不能解决基于版本的漏洞问题,则必须使用在npm audit fix眼中不完全兼容的版本/库来重构代码(在现实世界中,变化通常很小)。您可以使用npm list的帮助来获取需要tar无效版本的依赖项的名称,并更改此软件包的版本。