使用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参数,先完成初始化配置再手动装依赖:
- 执行初始化但跳过安装:
pnpm dlx trigger.dev@latest init -p xxxxxx --skip-install - 用pnpm手动安装所有需要的依赖:
要是版本还是冲突,就统一装兼容的版本(比如v2.x系列):pnpm install @trigger.dev/sdk@latest @trigger.dev/build@latest @trigger.dev/nextjs@latestpnpm 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




