编辑
2024-07-20
未分类
00

目录

NodeJs 使用 Corepack 安装 yarn.md
Corepack
用法
配置 yarn
Install Corepack
Node.js >=16.10
Node.js <16.10
参考链接

NodeJs 使用 Corepack 安装 yarn.md

Corepack

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

用法

由于 corepack 是一个实验性工具,所以默认是没有启动的,需要显式启用, 需要运行指令 corepack enable 进行启动;

此时 nodejs 的目录结构如下,可以看出 yarn 已经被安装

在这里插入图片描述

在项目 package.json 文件中新增属性 "packageManager",比如

json
"packageManager": "yarn@1.22.15"

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

javascript
// 当前应用激活 corepack enable // 定义包管理器 "packageManager": "yarn@4.1.1" // 声明的包管理器,会自动下载对应的 yarn,然后执行 yarn install // 用非声明的包管理器,会自动拦截报错 pnpm install Usage Error: This project is configured to use yarn yarn -version // return 4.1.1

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

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

更新 yarn 时可以执行如下命令:

sh
yarn set version stable yarn set version yarn@4.1.1 yarn set version yarn@4.3.1

配置 yarn

参考官方文档:

Install Corepack

The preferred way to manage Yarn is through Corepack, a new binary shipped with all Node.js releases starting from 16.10. It acts as an intermediary between you and Yarn, and lets you use different package manager versions across multiple projects without having to check-in the Yarn binary anymore.

Node.js >=16.10

Corepack is included by default with all Node.js installs, but is currently opt-in. To enable it, run the following command:

sh
corepack enable

Node.js <16.10

Corepack isn’t included with Node.js in versions before the 16.10; to address that, run:

sh
npm i -g corepack

img

参考链接

————————————————

本文作者:任浪漫

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明出处!