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

Node.js 18环境下Venom-Bot 5.0.5出现ERR_REQUIRE_ESM错误求助

问题分析

你遇到的ERR_REQUIRE_ESM错误根源在于:Venom-Bot 5.0.5依赖的latest-version模块从v7版本起改为纯ES模块,而Venom-Bot自身代码仍使用CommonJS的require()语法导入它,触发了Node.js的模块兼容限制。

解决方法

提供三个可行方案:

  • 方案1:降级latest-version到兼容版本
    执行以下命令强制安装支持CommonJS的latest-version@6.0.0:

    npm install latest-version@6.0.0 --save-exact
    

    该版本为CommonJS格式,可直接与Venom-Bot的代码兼容。

  • 方案2:临时修改Venom-Bot代码
    找到node_modules/venom-bot/dist/controllers/check-up-to-date.js文件,将第7行的:

    const latest_version_1 = __importDefault(require("latest-version"));
    

    替换为:

    import latest_version from 'latest-version';
    const latest_version_1 = { default: latest_version };
    

    注意:该修改会在重新安装依赖后失效,若需持久化,可使用patch-package工具生成补丁。

  • 方案3:将项目转为ES模块
    在项目的package.json中添加:

    "type": "module"
    

    同时将自身代码中的require()替换为import语法,比如导入Venom-Bot的代码改为:

    import venom from 'venom-bot';
    

    此方式需调整项目的模块语法,但能从根本上解决ESM与CommonJS的兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 13:22:21