我正在使用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 builder Auto Update
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"
行是罪魁祸首。
"src"
文件夹,这些文件夹必须与您的应用程序源代码一起打包/ bundle 在一起。 "debug"
下的"node_modules"
模块文件夹,则它具有"src"
文件夹,该文件夹已被上述规则排除。 建议:如果您将应用程序的源文件夹命名为
"src"
,请将其重命名为"source"
(在您的控件中),但请确保不要排除"src"
的node_modules
文件夹(将它们重新命名不在您的控件中,因为它可能会损坏模块的完整性,它们也会在新的npm install
上被覆盖)关于node.js - Electron 更新程序: Can not find module 'debug' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54128383/