pm2无法启动express应用

pm2 cannot start express application

我写了一个简单的 Express 应用程序。它 运行 使用“npm start”正确。 package.json中的脚本是这样的:

"type": "module",
"scripts": {
  "start": "src/bin/www.js"
}

但是我不能这样执行:

pm2 start ./src/bin/www.js

我查了 pm2.log。它显示“有太多不稳定的重启(16)”。

然后 运行 它与 pm2-dev:

pm2-dev start ./src/bin/www.js

报错:

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module:

Pm2 无法与 import/export 配合使用?节点版本为14.16.0.

首先确定你是否有以下两点:

  1. 节点版本 >= 14。它只适用于最新版本的节点。
  2. 确保你的 package.json 包含一行“type”:“module”,如果没有这一行,node 假设你想使用 Common JS 模块而不是 ESM。

如果两者都是正确的,但仍然无法正常工作,那么您可能是以下 github 问题

的受害者

https://github.com/Unitech/pm2/issues/4540

现在你可以用 babel 试试运行!