npm 我无法删除webpack 9.8.1

wmvff8tz  于 7个月前  发布在  Webpack
关注(0)|答案(1)|浏览(96)

我正在修复我的一个旧项目,我意识到webpack有问题。嗯,当我试图删除运行的版本时,我不知道它来自哪里,它继续出现
我已经尝试了npm unistall -g webpacknpm uninstall [[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)我还删除了node modules文件夹和package.lock.json文件。我已经清除了npm缓存npm cache clean --force

aamkag61

aamkag611#

我不知道它从何而来
package.json中的包可以有自己的依赖项(称为传递依赖项)。
例如,如果你安装了axios-它将有自己的dependencies
您可以跟踪node_modules文件夹中的任何软件包存在的原因。
为此(假设您使用npm),您可以使用npm explain
email protected(https://stackoverflow.com/cdn-cgi/l/email-protection)的
我不知道你从哪里得到的9.8.1版本,因为最新版本是email protected(https://www.npmjs.com/package/webpack?activeTab=versions)
我还删除了node modules文件夹和package.lock.json文件。我已经清除了npm缓存npm缓存clean --force
删除node_modules并重新安装软件包将不起作用(请参阅上面关于传递依赖项的内容)。
package-lock.json文件存储了版本的“锁”,因此当您删除node_modules文件夹并再次安装软件包或在新环境中安装所有内容时,您始终会获得相同的版本。
显然,npm cache是用于缓存的,所以当你运行npm install时,你不需要再次下载相同的版本。
如果您需要特定的webpack版本,请将其添加到package.json中,例如:
npm install [[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)
如果你想完全删除它-找到这个包,它有自己的依赖,并删除这个包(不确定你想这样做)。
如果你想拥有一个特定的版本,但不想在你的依赖项中拥有它,你可以使用package.json文件的overrides部分(请检查这个答案https://stackoverflow.com/a/67397982/12993263)。

相关问题