Mac系统下如何为不同项目配置不同版本的Yarn
为不同项目配置专属Yarn版本(Mac OS)
方法一:利用Yarn官方项目版本锁定(推荐)
Yarn原生支持项目级版本锁定,无需额外工具,步骤如下:
处理Project2(Yarn 1.22.22)
- 进入Project2根目录,先卸载全局Yarn避免优先级干扰:
npm uninstall -g yarn - 初始化Yarn经典版本并指定具体版本:
执行后项目根目录会生成yarn set version classic yarn set version 1.22.22.yarnrc文件,自动锁定当前Yarn版本。
处理Project1(Yarn 3.1.1)
- 进入Project1根目录,执行:
项目会生成yarn set version berry yarn set version 3.1.1.yarnrc.yml和.yarn目录,自动管理Yarn 3.1.1版本。
之后进入对应项目执行yarn命令时,系统会自动使用项目锁定的版本,无需手动切换。
方法二:本地安装Yarn配合npx调用
若不想使用Yarn自带版本管理,可直接在项目本地安装对应版本:
- 卸载全局Yarn:
npm uninstall -g yarn - 进入Project1,安装Yarn 3.1.1到开发依赖:
npm install yarn@3.1.1 --save-dev - 进入Project2,安装Yarn 1.22.22到开发依赖:
npm install yarn@1.22.22 --save-dev
后续在项目中执行Yarn命令时,用npx yarn替代直接yarn,npx会自动调用项目本地安装的版本:
# Project1中执行 npx yarn install # Project2中执行 npx yarn install
嫌npx麻烦的话,可修改终端PATH优先级,将项目的node_modules/.bin放在全局PATH之前,或给每个项目配置shell别名。
常见问题排查
- 之前本地安装失败大概率是全局Yarn优先级高于本地版本,卸载全局Yarn即可解决。
- Yarn 3(Berry)依赖
.yarnrc.yml和.yarn目录,若缺失可重新执行yarn set version命令生成。
内容的提问来源于stack exchange,提问作者Kunal Nk
相关产品推荐
相关产品推荐

