我正在使用 Electronjs 开发桌面应用程序(windows/mac)。我试图使用 Electron 更新器来实现自动更新功能,因为我正在使用 Electron 构建器来构建。
我能够为我的应用程序生成 .exe 文件,但在尝试安装时,它抛出错误:“找不到模块“调试””。请查看随附的屏幕截图 .
没有 Electron 更新程序的实现,我的应用程序运行良好。当我在 index.js 中导入 autoUpdator 时,开始出现该错误。我正在使用 autoUpdator,如下所示:
const {autoUpdater} = require("electron-updater");
autoUpdater.on('update-downloaded', (ev, info) => {
setTimeout(function() {
autoUpdater.quitAndInstall();
}, 5000)
})
app.on('ready', ()=> {
autoUpdater.checkForUpdates();
});
请查找下面的库描述:
- “Electron 更新程序”:“^4.0.6”
- “Electron ”:“^3.0.6”
- “Electron 构建器”:“^20.38.4”
我点击了以下链接:
electron builder using local server
我是 Electron js 的新手,正在积极寻求您的支持。
根据要求,请在下面找到我的构建配置:
"build": {
"appId": "com.****.*****",
"productName": "********",
"directories": {
"output": "build"
},
"publish": [
{
"provider": "generic",
"url": "http://127.0.0.1:4080/"
}
],
"nsis": {
"oneClick": false,
"perMachine": true,
"allowElevation": true,
"allowToChangeInstallationDirectory": true,
"deleteAppDataOnUninstall": true,
"createDesktopShortcut": true
},
"win": {
"target": "nsis"
},
"files": [
"!**/.vscode",
"!**/build",
"!**/config",
"!**/assets/data",
"!**/src"
],
"extraResources": [
{
"from": "src/assets/data",
"to": "dist/assets/data",
"filter": "database*"
}
]
},
最佳答案
排除列表中的行 "!**/src"
是罪魁祸首。
- 许多 Node 模块都会有
"src"
文件夹,这些文件夹必须与您的应用程序源代码一起打包/捆绑。 - 如果您观察
“node_modules”
下的“debug”
模块文件夹,它有一个已被上述规则排除的“src”
文件夹。
建议:如果您的应用源文件夹为 "src"
,请将其重命名为 "source"
等其他名称(由您控制),但确保不排除 node_modules
的 "src"
文件夹(重命名这些文件夹不在您的控制范围内,因为这可能会破坏模块的完整性,并且它们也会在新的 npm install
上被覆盖)
关于node.js - Electron 更新程序 : Can not find module 'debug' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54128383/