You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用pnpm执行trigger.dev init时CLI强制用npm引发依赖冲突

Trigger.dev CLI 初始化时强制用npm引发依赖冲突的解决办法

我用trigger.dev CLI初始化项目时,CLI硬要用npm执行安装命令(比如npm install -D @trigger.dev/build@latest),导致peer依赖版本冲突报错。但手动用pnpm装@trigger.dev/sdk@latest完全正常,就是CLI不配合用pnpm,卡在初始化步骤。

错误日志如下:

pnpm dlx trigger.dev@latest init -p xxxxxx

Trigger.dev (3.3.17)
------------------------------------------------------
┌  Initializing project
│
◇  Retrieved your account details for xxxxx
│
◇  Configuring project "xxxx"
│
◇  @trigger.dev/sdk@latest installed
│
◇  Failed to install @trigger.dev/sdk@latest. Rerun command with --log-level debug for more details
X Error: Command failed with exit code 1: npm install -D @trigger.dev/build@latest
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: @trigger.dev/nextjs@2.3.19
npm ERR! Found: @trigger.dev/sdk@3.3.17
npm ERR! node_modules/@trigger.dev/sdk
npm ERR!   @trigger.dev/sdk@"^3.3.17" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @trigger.dev/sdk@"^2.3.19" from @trigger.dev/nextjs@2.3.19
npm ERR! node_modules/@trigger.dev/nextjs
npm ERR!   @trigger.dev/nextjs@"^2.3.19" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: @trigger.dev/sdk@2.3.19
npm ERR! node_modules/@trigger.dev/sdk
npm ERR!   peer @trigger.dev/sdk@"^2.3.19" from @trigger.dev/nextjs@2.3.19
npm ERR!   node_modules/@trigger.dev/nextjs
npm ERR!     @trigger.dev/nextjs@"^2.3.19" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!

解决方法

1. 强制CLI使用pnpm安装

试试给init命令加--package-manager参数指定pnpm:

pnpm dlx trigger.dev@latest init -p xxxxxx --package-manager pnpm

2. 手动跳过CLI的安装步骤

如果CLI支持--skip-install参数,先完成初始化配置再手动装依赖:

  1. 执行初始化但跳过安装:
    pnpm dlx trigger.dev@latest init -p xxxxxx --skip-install
    
  2. 用pnpm手动安装所有需要的依赖:
    pnpm install @trigger.dev/sdk@latest @trigger.dev/build@latest @trigger.dev/nextjs@latest
    
    要是版本还是冲突,就统一装兼容的版本(比如v2.x系列):
    pnpm install @trigger.dev/sdk@^2.3.19 @trigger.dev/build@^2.3.19 @trigger.dev/nextjs@^2.3.19
    

3. 临时让npm绕过peer依赖检查(不推荐长期用)

如果必须用npm执行安装,加--legacy-peer-deps参数跳过冲突检查:

npm install -D @trigger.dev/build@latest --legacy-peer-deps

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

火山引擎 最新活动