electron-updater 报错 Cannot find module 'debug'


字数:392 阅读时长:2分钟 阅读:85

使用 electron-updater 更新 electron 应用,打完包安装启动出现这种报错:Cannot find module 'debug'Cannot find module 'builder-util-runtime'

electron-updater

项目依赖

1
2
3
4
5
6
7
8
{
"electron": "^24.4.1",
"electron-builder": "^23.6.0",
"electron-builder-squirrel-windows": "^24.5.0",
"electron-log": "^4.4.8",
"electron-updater": "^5.3.0",
"electron-vite": "^1.0.23",
}

完整报错

1
2
3
4
5
A JavaScript error occurred in the main process
Uncaught Exception:
Error: Cannot find module 'builder-util-runtime'Require stack:
-/Applications/Post Tools.app/Contents/Resources/app.asar/node moduleselectron-updater/out/main.js- /Applications/Post Tools.app/Contents/Resources/app.asar/out/mainindex.js
at Module.resolveFilename (node:internal/modules/cjs/loader:1054:15at n. resolveFilename (node:electron/js2c/browser init:2:109974)at Module. load (node:internal/modules/cjs/loader:900:27)at f. load (node:electron/js2c/asar bundle:2:13330)at Module.require (node:internal/modules/cjs/loader:1120:19)at require (node:internal/modules/cjs/helpers:103:18)at Object.<anonymous> (/Applications/Post Tools.app/Contents/Resourcesapp.asar/node modules/electron-updater/out/main.js:4:32)at Module.compile (node:internal/modules/cjs/loader:1241:14)at Module.extensions..js (node:internal/modules/cjs/loader:1296:10)at Module.load (node:internal/modules/cjs/loader:1096:32)

问题原因

因为项目使用 pnpm 安装依赖,打完包后有些资源找不到,导致这种很奇怪的报错(Cannot find module 'xxx')。

问题解决

  1. 在项目根目录下,新建 .npmrc 文件。
  2. 配置
1
node-linker=hoisted

设置了 node-linker=hoistedpnpm 就会形成扁平化的结构,然后 electron-builder 会自动寻找依赖进行打包,就不会出现这种 Cannot find module 'xxx' 包找不到的情况。


欢迎访问:天问博客

本文作者: Tiven
发布时间: 2023-07-02
最后更新: 2023-07-17
本文标题: electron-updater 报错 Cannot find module 'debug'
本文链接: https://www.tiven.cn/p/3ed3cb23/
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!
欢迎留言,提问 ^_^
个人邮箱: tw.email@qq.com
notification icon
博客有更新,将会发送通知给您!