You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Yarn工作区Monorepo中从根node_modules创建包软链接

解决Monorepo子包复用根目录node_modules的问题

方法1:配置Yarn工作区(推荐)

在根目录的package.json中添加工作区配置,让Yarn自动管理子包依赖,复用根目录已有的node_modules:

{
  "private": true,
  "workspaces": [
    "packages/*"
  ]
}

配置完成后,直接在根目录执行yarn install,Yarn会自动将子包依赖链接到根目录的node_modules,优先复用现有依赖,仅补充缺失部分,不会重复下载。

方法2:手动创建软链接

若不想使用工作区,可手动为每个子包创建指向根目录node_modules的软链接:

  1. 进入子包目录,先删除原有node_modules(如果存在):
    rm -rf node_modules
    
    Windows系统执行:
    rmdir /s /q node_modules
    
  2. 创建软链接:
    ln -s ../../node_modules node_modules
    
    Windows系统执行:
    mklink /D node_modules ..\..\node_modules
    

方法3:使用离线安装模式

强制Yarn仅使用本地缓存,避免从服务器下载:

yarn install --offline

需确保根目录node_modules依赖完整,且Yarn本地缓存中存在对应版本的依赖包。

注意事项

  • 确保子包package.json中的依赖版本与根目录node_modules里的版本一致,避免版本不兼容问题。
  • 使用Yarn工作区时,根目录package.json必须设置"private": true,防止仓库被意外发布。

内容的提问来源于stack exchange,提问作者Akansh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 22:16:40