为什么pm2忽略了ecosystem.config.js文件中传递给节点的--experimental-modules?

2024-02-13

这是我的main.js file:

import Koa from "koa";

const app = new Koa();
app.use(async ctx => ctx.body = "Hello, World!");
app.listen(3000);

这是我的package.json file:

{
  "type": "module",
  "name": "koa-sandbox",
  "version": "1.0.0",
  "description": "",
  "main": "./src/main.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node --experimental-modules ./src/main.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "koa": "^2.7.0"
  }
}

当我通过启动它时它工作正常npm:

npm start

现在我需要通过做同样的事情pm2。这是我的ecosystem.config.jsfile:

module.exports = {
  apps : [{
    name: 'API',
    script: './src/main.js',
    node_args : '--experimental-modules',
    instances: 1,
    autorestart: true,
    watch: true,
    max_memory_restart: '1G',
  }],
};

我开始我的申请:

pm2 start .\ecosystem.config.js

但我看到结果:

在日志文件中我看到它:

(node:12696) ExperimentalWarning: The ESM module loader is experimental.
C:\lab\koa-sandbox\src\main.js:1
import Koa from "koa";
       ^^^

SyntaxError: Unexpected identifier
    at Module._compile (internal/modules/cjs/loader.js:720:22)

Why pm2忽略了--experimental-modules传递给node in the ecosystem.config.js file?

我看到类似的问题here https://stackoverflow.com/questions/52499715/pm2-not-working-with-experimental-modules-flag但还没回复...


使用esm时import我正在使用esm包 http://npmjs.com/package/esm

例如,您可以添加一个文件index.js并在文件中

require = require("esm")(module/*, options*/)
module.exports = require("./main.js")

并修改ecosystem.config.js to

module.exports = {
  apps : [{
    name: 'API',
    script: './src/index.js',
    instances: 1,
    autorestart: true,
    watch: true,
    max_memory_restart: '1G',
  }],
};

In the package.json你不必

"start": "node --experimental-modules ./src/main.js"

该脚本将运行,无需--experimental-modules.

just

"start": "node ./src/index.js"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么pm2忽略了ecosystem.config.js文件中传递给节点的--experimental-modules? 的相关文章

随机推荐

  • 在同一地址多次放置 new 是否定义明确/合法?

    注意 这个问题的动机是试图提出预处理器黑客技术来生成无操作分配来回答另一个问题 接受新对象的宏 https stackoverflow com questions 7522949 c macro that accent new object
  • 路由的处理程序无效 - Wordpress

    我正在尝试使用类在 WordPress 中创建自定义 REST API 端点 我也用传统的方式做了同样的事情 效果很好 但是 使用类时我收到错误The handler for the route is invalid 代码 class CS
  • 谁能解释一下android中未绑定服务和绑定服务之间的区别

    任何人都可以解释一下android中未绑定服务和绑定服务之间的区别 并解释一下意图服务 Thanks 绑定服务 http developer android com guide components bound services html
  • 制作堆叠矩形而不是列的直方图

    使用以下代码 我得到如下的直方图 x lt rnorm 100 hist x col gray 我该怎么做才能将条形显示为堆叠矩形 通过其轮廓可见 而不是填充颜色的变化 而不是统一的列 每个矩形代表一个频率 例如 1 尽管我希望能够通过参数
  • 使用 dropzone.js 发送附加参数

    我正在尝试添加 dropzone js 并且想通过 file 传递另一个参数 因此我将隐藏输入放入 form 中 我可以上传文件并可以在Java部分读取它 但我无法读取type chooser WebKitFormBoundaryZxF6M
  • 我的上网IP是多少

    我的电脑上安装了两张网卡 一个用于互联网连接 另一个用于与客户端计算机共享互联网 我用这段代码获取我的IP IPHostEntry HosyEntry Dns GetHostEntry Dns GetHostName foreach IPA
  • Mustache Templates可以做模板扩展吗?

    我是小胡子的新手 许多模板语言 例如 Django Jinja 会让你像这样扩展 父 模板 基本 html block content endblock 首页 html extends base html block content h1
  • 如何从 mysql 数据库中删除重复的条目?

    我有一个包含一些 id 标题的表 我想让标题列唯一 但它已经有超过 600k 条记录 其中一些是重复的 有时是几十次 如何删除除一个之外的所有重复项 以便我可以在之后的标题列中添加一个 UNIQUE 键 此命令添加唯一键 并删除生成错误 由
  • Quarkus - SmallRye 反应式消息传递 - RabbitMQ:将消息发送到默认交换

    使用远程过程调用 https www rabbitmq com tutorials tutorial six java html模式 我需要将答案发送到回复队列 即我需要将消息发送到默认交换机 并以队列名称作为路由键 我在 Quarkus
  • JACOB 和 jre 1.7 出现 UnsatisfiedLinkError

    我编写了一个使用 JACOB 访问 iTunes 的程序 它在 Eclipse 中工作正常 但是当我导出它并在命令提示符中运行它时 我收到一个不满意的链接错误 告诉我 jacob 1 17 M2 x86 dll 是不在我的 java lib
  • 如何在 Android Wear 设备上运行 Xamarin.Forms 应用程序

    我怎样才能运行Xamarin Forms Platform Android FormsApplicationActivity在 Android Wear 设备上 电话base OnCreate bundle 在 的里面onCreate我的类
  • Xcode Instruments:泄漏 - 应用程序在启动时崩溃

    Xcode Instruments 泄漏 应用程序在启动时崩溃 该应用程序在设备和模拟器中都会崩溃 什么可能导致应用程序在连接仪器时崩溃 而在使用电缆或通过 Fabric 无线安装时正常工作 Update Launching the All
  • 如何在 Servicestack 中隐藏 Swagger UI 的端点?

    我正在使用 ServiceStack 3 9 59 0 的 Swagger 插件 我的 ServiceStack API 中有一些端点 例如 selfchecknode 我不想在 Swagger UI 中显示它们 是否有一种声明性方式 也许
  • 带有居中标签的堆叠条形图

    我试图 稳健地 将数据标签集中在堆积条形图中 下面给出了一个简单的代码示例和结果 正如您所看到的 数据标签并未真正在所有矩形中居中 我缺少什么 import numpy as np import matplotlib pyplot as p
  • 将幻灯片上传到 YouTube

    如何使用 YouTube 的 API 将照片幻灯片上传到 Youtube 我在这里找不到它 https developers google com youtube 2 0 developers guide protocol uploadin
  • C++17 中已弃用 std::is_literal_type

    根据参考参数 http en cppreference com w cpp 特质std is literal type http en cppreference com w cpp types is literal type在 C 17 中
  • 我应该研究 PTX 来优化我的内核吗?如果是这样,怎么办?

    您是否建议阅读内核的 PTX 代码以进一步优化内核 一个例子 我读到 可以从 PTX 代码中找出自动循环展开是否有效 如果不是这种情况 则必须在内核代码中手动展开循环 PTX 代码还有其他用例吗 你查看过你的 PTX 代码吗 在哪里可以找到
  • 无法读取 React 中未定义的属性“forEach”

    我想用下一个代码来验证私有路由 import React from react import Route Redirect from react router dom import routes from routing routes ex
  • 访问:重置自动编号的查询

    我的数据库是为滑雪比赛制作的 这个想法是 你可以填写人们滑雪的时间 数据库会根据首先设定时间的人 你的性别和年龄自动计算你获得的奖牌类型 我制作了一个表格 可以注册并给出所有结果 我现在遇到的唯一问题是在签约时必须按年龄订购 我这样做了 但
  • 为什么pm2忽略了ecosystem.config.js文件中传递给节点的--experimental-modules?

    这是我的main js file import Koa from koa const app new Koa app use async ctx gt ctx body Hello World app listen 3000 这是我的pac