如何得知目前项目的node包管理器

前言

以前写的一个小项目,记不起来用的是pnpm还是npm。
其中还更换过管理器,所以很混乱,由于是自己随便写的,因此能跑就行(大雾

方法

查看package.json文件

image
最底下有packageManager字段,这个应该是项目初期使用的包管理器。

由于换过管理器,因此用这个方法还是错了。

查看lock文件

这个方法应该是最准确的。

  • npm,使用package-lock.json
  • yarn,使用yarn.lock
  • pnpm,使用pnpm-lock.yaml

看了一下,packageManager用的是pnpm,然后之后混用了npm,于是项目的锁文件变成了package-lock.json

总之解决问题了就好。

换掉

删除node_modules,然后pnpm i即可。

rimraf .\node_modules\

更换包管理器应该搜索关键词迁移
比如下面这篇文章。
https://pengtech.net/nodejs/migrate_to_pnpm.html
在package.json的script中,添加以下字段,可以避免运行其他的包管理器。

"preinstall": "npx only-allow pnpm"

如此一来,可以防止我前面这种问题的出现。

posted @ 2024-12-09 21:29  魂祈梦  阅读(10)  评论(1编辑  收藏  举报