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

如何在ecosystem.config.js中配置PM2运行自定义npm dev脚本

PM2 运行npm自定义dev脚本的正确配置方案

核心原因说明

npm的start是内置特殊脚本,执行npm start等价于npm run start,但其他自定义脚本(比如dev)必须显式携带run参数执行,你之前的配置失败分别对应以下问题:

  • 第一种配置错误:script字段仅支持填写可执行文件名称/路径,不能携带参数,PM2会尝试查找名为npm run dev的可执行文件,必然不存在
  • 第三种配置错误:dev不是npm的顶级内置命令,直接传args: 'dev'等价于执行npm dev,不存在该命令
  • 第二种配置本身逻辑正确,若运行失败大概率是遗漏了其他配套配置项

正确配置方案

1. 命令行直接执行

pm2 start npm -- run dev

2. ecosystem.config.js 标准配置

module.exports = {
  apps : [{
    name: "your-dev-app",
    script: "npm",
    args: "run dev",
    // 必须正确指定package.json所在的工作目录
    cwd: "./your-project-path",
    // Windows系统下可替换为以下配置解决npm路径识别问题
    // script: "npm.cmd",
    // args: "run dev"
  }]
}

更稳定的替代方案

避免通过npm中转进程,直接指定实际执行的入口文件,性能更高、报错更直观:
比如你的package.json中dev脚本配置为"dev": "nodemon src/index.js",可以直接写配置:

...
script: "src/index.js",
interpreter: "nodemon",
cwd: "./your-project-path",
...

常见排查点

  • 先直接在项目目录执行npm run dev,确认脚本本身可以正常运行
  • 确认cwd配置项指向的目录存在package.json,且包含dev脚本声明
  • Windows环境优先尝试使用npm.cmd作为script值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 07:36:05