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

如何手动触发pnpm的workspace版本替换(无需执行publish)

解决方法

当然可以手动触发workspace依赖版本的替换操作,给你两种实用方案:

方案一:用pnpm专用命令直接替换

pnpm提供了专门的命令来替换工作区依赖版本,不需要执行发布流程:

  1. 确保项目根目录存在pnpm-workspace.yaml(pnpm工作区的标识文件)
  2. 在项目根目录执行以下命令:
pnpm dlx @pnpm/plugin-commands-publish replace-workspace-deps app

执行后,app/package.json里的"lib": "workspaces:*"会自动替换成lib包的实际版本(比如"lib": "^1.0.0")。

方案二:通过打包提取处理后的package.json

如果不想额外调用插件,也可以用pnpm自带的打包功能间接实现:

  1. 进入app包目录:
cd app
  1. 执行打包命令:
pnpm pack

这会生成一个类似app-1.0.0.tgz的压缩包,里面的package.json已经完成了workspace依赖的版本替换。
3. 解压这个压缩包,把里面的package.json复制出来替换原app目录下的同名文件即可。

注意:如果你的lib包还没发布到npm仓库,复制源码运行时记得把lib包也一起复制,或者在新环境里将lib作为本地依赖安装,否则替换版本后可能无法拉取到对应的lib包。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 14:42:40