为何pnpm配置node-linker=pnp且symlink=false仍生成node_modules文件夹?
解决PNPM Monorepo配置PNP后仍生成node_modules的问题
以下是可能遗漏的配置及排查方向:
- 缺少
package-import-method=pnp配置。这个选项会强制PNPM采用PNP机制导入依赖,避免回退到生成node_modules的模式,需要在根目录.npmrc中添加该配置项。 - 检查PNPM版本兼容性。早期版本的PNPM对PNP支持存在缺陷,确保使用7.x及以上的稳定版本。
- 排查子包的
.npmrc文件。如果子包目录下存在独立的.npmrc,可能会覆盖根目录的配置,需删除子包中的该文件或同步PNP相关配置。 - 验证配置是否生效。执行
pnpm config list --show-secrets查看当前生效的配置,确认node-linker和package-import-method均设置为pnp。 - 清理缓存后重新安装。残留的缓存可能导致配置不生效,先执行
pnpm store prune清理缓存,再重新运行pnpm i。
内容的提问来源于stack exchange,提问作者LoneWolfPR
相关产品推荐
相关产品推荐

