После завершения исходного кода, который вы разместили, я могу нормально запустить его, используя Electron 2.0.7.
Ошибка, которую вы видите, вероятно, связана с какой-то другой частью вашего кода.Судя по сообщению об ошибке, проверьте, импортируете ли вы модуль с именем screen
куда-то.
Вот ваш исходный код, заполненный до MCVE:
const {app, BrowserWindow} = require('electron')
let win = null
console.log(`Node ${process.versions.node}, Chrome ${process.versions.chrome}, Electron ${process.versions.electron}`)
function checkSingleInstance() {
// to make singleton instance
const isSecondInstance = app.makeSingleInstance((commandLine, workingDirectory) => {
// Someone tried to run a second instance, we should focus our window.
if (win) {
if (win.isMinimized()) {
win.restore();
win.focus();
}
}
});
if (isSecondInstance) {
console.log("Exiting because another instance is running")
app.quit();
return;
}
}
checkSingleInstance();
app.on('ready', () => {
win = new BrowserWindow({width: 200, height: 200});
win.on('closed', () => win = null);
});