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

如何用NX替代Lerna实现Monorepo全包link/unlink?

用NX替代Lerna实现Monorepo包关联/解除关联的方案

你当前使用Yarn Classic作为包管理器的Monorepo项目中,原有依赖Lerna的关联/解除关联脚本如下:

"link:all": "nx exec -- yarn link",
"unlink:all": "lerna exec -- yarn unlink"

问题解答

完全可以用NX替代Lerna实现该功能,你运行nx exec -- yarn link报错是因为NX的nx exec与Lerna的lerna exec默认行为不同:Lerna会自动在所有包目录下执行命令,而NX的nx exec需要明确指定执行范围。

修正后的脚本

将脚本修改为以下形式即可正常工作:

"link:all": "nx exec --all -- yarn link",
"unlink:all": "nx exec --all -- yarn unlink"

说明

  • --all参数用于告诉NX在Monorepo的所有项目目录下执行后续的yarn link/yarn unlink命令,解决了"无法确定项目名称"的报错问题。
  • 如果需要针对特定范围的项目执行,可以替换--all为--projects参数指定匹配规则,例如--projects=packages/*仅在packages目录下的项目执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 07:22:02