【Node】Corepack

Corepack

Corepack是一个实验性工具,在 Node.js v16.13 版本中引入,它可以指定项目使用的包管理器以及版本, 简单来说,Corepack 会成为 Node.js 官方的内置 CLI,用来管理『包管理工具(yarn、pnpm)』,用户无需手动安装,即『包管理器的管理器』。

用法

由于corepack 是一个实验性工具,所以默认是没有启动的,需要显式启用,需要运行指令 corepack enable 进行启动;在项目package.json 文件中新增属性 "packageManager",比如

"packageManager": "[email protected]"

代表当前项目只允许使用yarn 包管理器并指定1.22.15版本

// 当前应用激活
corepack enable

// 定义包管理器
packageManager": "[email protected]"

// 声明的包管理器,会自动下载对应的 yarn,然后执行
yarn install

// 用非声明的包管理器,会自动拦截报错
pnpm install
Usage Error: This project is configured to use yarn

因为在试验阶段,目前还有些问题待解决:

  • 目前仅支持 pnpm 和 yarn,cnpm 也是不支持的
  • 兼容性还有些问题,npm 还无法拦截也就是说 即便配置了 packageManager 使用 yarn,但是依然可以调用全局 npm 安装

你可能感兴趣的:(node.js)