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

如何让pnpm安装时严格遵循依赖精确版本(忽略caret)

如何让pnpm严格使用依赖范围的最低版本而非最新版本

单次安装的临时方案

执行安装命令时添加--resolution-mode=lowest参数,强制pnpm为所有依赖(包括传递依赖)选择版本范围内的最低可用版本:

pnpm install a@1.0.0 --resolution-mode=lowest

对于b@^1.0.0这类 caret 范围的依赖,会直接安装b@1.0.0而非最新的1.2.0。

全局生效的持久化方案

如果希望所有安装操作都默认遵循此规则,在项目根目录的package.json中添加pnpm专属配置:

{
  "pnpm": {
    "resolutionMode": "lowest"
  }
}

之后任何pnpm install操作都会自动选择各依赖范围的最低版本,无需重复加参数。

额外说明

  • resolutionMode还有其他可选值:
    • highest:默认行为,选择满足范围的最新版本
    • highest-direct:直接依赖选最新,传递依赖选最低
    • lowest-direct:直接依赖选最低,传递依赖选最新
  • 若需针对个别依赖例外,仍可通过pnpm.overrides单独指定版本,与全局配置兼容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 15:34:58