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

如何仅安装NX管理的monorepo中特定包的依赖?

解决NX Monorepo中仅安装单个包依赖的问题

问题原因

你遇到的情况是因为Yarn会识别根目录的工作区配置(NX管理的monorepo默认启用Yarn Workspaces),哪怕在子包目录执行yarn install,它依然会按照整个工作区的依赖关系来安装所有关联包的依赖,而非仅当前目录的包。

解决方案

方法1:使用Yarn的工作区禁用参数

在目标包(比如is-even)的目录下,执行带--no-workspace-folder参数的安装命令:

yarn install --no-workspace-folder

这个参数会让Yarn忽略根目录的工作区配置,仅解析当前目录的package.json,只安装该包的直接依赖。

方法2:使用NX的项目执行命令

在项目根目录,用NX的exec命令指定目标包,再执行安装:

nx exec --project is-even -- yarn install

这个命令会在is-even包的目录上下文执行yarn install,同时通过NX的项目隔离,避免触发整个工作区的依赖安装。

方法3:临时调整工作区配置(不推荐)

如果需要长期让某个包独立安装,可以临时修改根目录package.json中的workspaces字段,移除其他包的路径,比如:

{
  "workspaces": [
    "packages/is-even"
  ]
}

修改后在is-even目录执行yarn install即可,完成后记得恢复原配置,避免影响整个项目的工作区依赖管理。

内容的提问来源于stack exchange,提问作者Joey Yi Zhao

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 16:22:18