Npm安装发出警告,npm审核修复不起作用

Ayu*_* M. 9 node.js npm angular

我正在使用.net核心Web API开发角度应用程序。

克隆此存储库时,我尝试在angular应用程序上运行npm install,但出现一个奇怪的错误:

npm install
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

audited 34090 packages in 14.711s
found 15 vulnerabilities (9 low, 6 high)
  run `npm audit fix` to fix them, or `npm audit` for details 
Run Code Online (Sandbox Code Playgroud)

另外,如果我尝试进行npm审核修复,则会收到更多错误:


npm audit fix
npm ERR! code ELOCKVERIFY
npm ERR! Errors were found in your package-lock.json, run  npm install  to fix them.
npm ERR!     Invalid: lock file's @progress/kendo-theme-default@file:https:/registry.npmjs.org/@progress/kendo-theme-default/-/kendo-theme-default-2.48.1.tgz does not satisfy @progress/kendo-theme-default@file:lib/kendo-theme-default
npm ERR!     Invalid: lock file's bootstrap@file:https:/registry.npmjs.org/bootstrap/-/bootstrap-4.0.0.tgz does not satisfy bootstrap@file:lib/bootstrap
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

rld*_*rld 19

我最近学到的最好的事情是安装npm-check-updates。它会自动完成所有操作。

ncu在我的情况下运行列表是这样的:

 $ ncu

 babel-core           ^6.26.0  ?  ^6.26.3
 babel-loader          ^7.1.5  ?   ^8.0.6
 babel-preset-env      ^1.6.1  ?   ^1.7.0
 copy-webpack-plugin   ^4.6.0  ?   ^5.0.5
 style-loader         ^0.20.2  ?   ^1.0.1
 webpack                4.0.0  ?   4.41.2
Run Code Online (Sandbox Code Playgroud)

然后运行ncu -u自动升级。

  • npm-check-updates +1。还发现这篇文章很有意义,在看到所有这些错误后帮助我放松:https://www.voitanos.io/blog/don-t-be-alarmed-by-vulnerability-after-running-npm -安装/ (2认同)

Cod*_*ife 14

通常,这与package-lock.json混乱有关。我建议尝试:

1-删除您的package-lock.json

2-删除您的node_modules文件夹

3-再次尝试安装npm

在我的角度应用程序中添加新软件包时,这曾经解决了几个问题。

祝好运!

  • 虽然在 OP 的情况下可能没问题,但这种做法可能会适得其反,否则会很糟糕。包锁的存在是有原因的 - 它确保您的依赖结构在安装之间保持一致。如果删除它,您就会丢失它,并且您的代码可能很容易出现错误。也有可能它不会立即被注意到。如果您这样做,请确保您至少具有良好的测试覆盖率。 (10认同)
  • 那对我不起作用。 (3认同)
  • 好的,在查看错误本身之后,它表示它无法在 npm 上找到您要查找的这些包。这些似乎是 bootstrap 和 kendo ui 主题。我只想发送一个想法,也许尝试手动卸载并重新安装它们可以解决问题。 (2认同)