I can't open my electron app that I packaged , it created the folder release builds but I am not able to open the exe file it created. I suspect the problem is in package.json . if I do npm start the app is launching and working . I kind of fiddled with package.json installing modules like electron-build I think I must have done something wrong that time . I think the issue is just a typo but I can't find the typo . This is the error
mysecondelectron-proj@1.0.0 package-win electron-packager . electron-tutorial-app --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName="Notes"
WARNING: --asar does not take any arguments, it only has sub-properties (see --help) Packaging app for platform win32 ia32 using electron v18.2.3 WARNING: Found 'electron' but not as a devDependency, pruning anyway Wrote new app to release-builds\electron-tutorial-app-win32-ia32 . This file is package.json
{
"name": "mysecondelectron-proj",
"version": "1.0.0",
"description": "My note taking App",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "electron .",
"package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds",
"package-win": "electron-packager . electron-tutorial-app --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"Notes\"",
"package-linux": "electron-packager . --overwrite --platform=linux --arch=x64 --icon=assets/icons/png/icon.png --prune=true --out=release-builds"
},
"author": "Keegan Albert",
"license": "MIT",
"dependencies": {
"electron": "^18.2.3"
}
}
main.js
const electron = require("electron");
const url = require("url");
const path = require("path");
const {app , BrowserWindow , Menu , ipcMain} = electron;
let mainWindow;
let addWindow;
app.on('ready' , function(){
mainWindow = new BrowserWindow({
webPreferences: {
nodeIntegration: true,
contextIsolation: false,
}
});
mainWindow.loadURL(url.format({
pathname: path.join(__dirname , 'mainWindow.html'),
protocol: 'file:',
slashes: true
}))
mainWindow.on('closed' , function(){
app.quit();
})
})
function createAddWindow(){
addWindow = new BrowserWindow({
width: 300,
height:200,
title:'Add Shopping List Item',
webPreferences: {
nodeIntegration: true,
contextIsolation: false,
}
});
addWindow.loadURL(url.format({
pathname: path.join(__dirname, 'addNoteWindow.html'),
protocol: 'file:',
slashes:true
}));
// Handle garbage collection
addWindow.on('close', function(){
addWindow = null;
});
}
const mainMenuTemplate = [{
label: 'File',
submenu: [
{
label: 'Quit',
accelerator: process.platform == 'darwin' ? 'Command+Q' : 'Ctrl+Q',
click(){
app.quit();
}
},
{
label: 'Add Note',
accelerator: process.platform == 'darwin' ? 'Command+N' : 'Ctrl+N',
click(){
createAddWindow();
}
},
{
label:'Clear Items',
accelerator: process.platform == 'darwin' ? 'Command+D' : 'Ctrl+D',
click(){
mainWindow.webContents.send('item:clear');
}
}
]
}]
webPreferences: {
devTools: false
}
if(process.env.NODE_ENV !== 'production'){
mainMenuTemplate.push({
label: 'Developer Tools',
submenu:[
{
role: 'reload'
},
{
label: 'Toggle DevTools',
accelerator:process.platform == 'darwin' ? 'Command+I' : 'Ctrl+I',
click(item, focusedWindow){
focusedWindow.toggleDevTools();
}
}
]
});
}
const mainMenu = Menu.buildFromTemplate(mainMenuTemplate);
Menu.setApplicationMenu(mainMenu);
ipcMain.on('item:add' , function(e , item){
mainWindow.webContents.send('item:add' , item);
addWindow.close();
});