Electron Builder:“主进程发生错误 - 回调不是函数”

Posted

技术标签:

【中文标题】Electron Builder:“主进程发生错误 - 回调不是函数”【英文标题】:Electron Builder: "Error occurred in the main process - Callback is not a function" 【发布时间】:2021-02-21 23:31:06 【问题描述】:

我已经构建了一个 Electron 应用程序,该应用程序在从命令行运行时可以正常工作: npm start

我想将应用程序部署为 Mac/Windows/Linux 的用户友好型安装程序。为了实现这一点,我使用Electron-Builder 来打包和构建我的源文件。我用来执行构建过程的命令是:npx electron-builder

当我尝试运行打包和构建的应用程序时,我立即收到一条错误消息:

主进程发生 javascript 错误 未捕获的异常: TypeError:回调不是函数 在 ELECTRON_ASAR.js:600:9 在 _combinedTickCallback (internal/process/next_tick.js:131:7) 在 process._tickCallback (internal/process/next_tick.js:180:9) screenshot of error message

在弹出窗口中单击“确定”后,应用程序按预期运行。

如果我使用npm start 命令npx electron-builder 一起构建,我也会收到此消息。

我已经在 Mac 和 Linux 上进行了测试,并且收到了相同的消息。我什至用一个空的电子项目(没有自定义代码或依赖项)进行了测试,但我仍然收到此消息。因此我认为这是 Electron-Builder 的问题。

关于如何阻止此错误消息在运行时开始时弹出的任何想法? 谢谢。

【问题讨论】:

该错误主要发生在您的代码有问题时..所以请确保您使用的构建器应该适用于您的电子版本..并尝试使用电子的更新版本。 【参考方案1】:

我使用的是旧版本的 Electron...更新到最新的稳定版本(当前为 10.1.5)解决了这个问题。

【讨论】:

【参考方案2】:

您可以执行以下建议

    删除 %AppData% 和 %LocalAppData% 中的应用数据文件夹 重新注册 javascript dll 文件 重新安装 Skype、discord 等有问题的应用程序。

如果您想详细了解如何执行此流程,请访问 -->https://www.thewindowsclub.com/javascript-error-occurred-in-the-main-process

【讨论】:

以上是关于Electron Builder:“主进程发生错误 - 回调不是函数”的主要内容,如果未能解决你的问题,请参考以下文章

03、electron-builder打包命令报错

为 windows 创建应用安装程序 - Electron (electron-packager, electron-builder)

electron-builder中NSIS配置项

Electron 使用 electron-builder 创建 MSI 安装程序

Electron 和 TypeScript (electron-builder):“不能在模块外使用 import 语句”

创建 Electron JS 可执行文件(electron-builder 或 electron-forge)