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

在Mac执行npm run prod时报错ERR_REQUIRE_ESM,求解决方案

解决npm run prod时的ERR_REQUIRE_ESM错误

在Mac系统执行npm run prod时触发以下错误:

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /Volumes/jack/company/et e ch/projects/node_modules/postcss-cli/index.js
at Object.Module._extensions..js (internal/modules/cjs/loader.js: 1173:13)
at Module.load (internal/modules/cjs/loader.js:1001:32)
at Function.Module._load (internal/modules/cjs/loader.js:900:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
at internal/main/run_main_module.js:18:47
code: 'ERR_REQUIRE_ESM'

以下是几种可行的解决方式:

  • 降级postcss-cli到兼容CommonJS的版本
    最新版postcss-cli已改为ES模块,若你的项目基于CommonJS(使用require()语法),可安装仍支持CommonJS的旧版本:

    npm uninstall postcss-cli
    npm install postcss-cli@8.x --save-dev
    
  • 将项目转为ES模块规范
    在项目根目录的package.json中添加配置,让项目默认使用ES模块:

    "type": "module"
    

    注意:修改后需将项目中所有require()调用替换为import语法,同时确保所有依赖包都支持ESM规范。

  • 通过工具兼容ESM与CommonJS
    若不想修改项目结构,可借助esm包实现兼容:
    先安装依赖:

    npm install esm --save-dev
    

    再修改package.json中的prod脚本:

    "scripts": {
      "prod": "node -r esm 你的构建入口脚本.js"
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 00:56:02