Я использую foreverjs в своей основной электронной программе следующим образом:
const forever = require("forever-monitor");
let child = forever.start(scriptPath, {fork: true});
Я делаю это намеренно, используя child_process.fork, потому что я хочу, чтобы foreverjs следил за вилками и перезапускал их при необходимости.
Хорошо - все вышеперечисленное работает, но, глядя на мою док-станцию на Mac OSX, я вижу, что электронное приложение дублируется для каждой вилки.В производстве это то же самое - значок приложения получает дублированные N раз в Dock для каждого процесса.
Дальнейшее расследование Я нашел причину, но не решение.Причина в том, что, когда вы разветвляете процесс, обычно используя child_process изнутри электрона, он запускает его с помощью приложения Electron Helper.
Однако, когда вы разветвляете процесс с помощью forever.js, он использует само приложение Electron, объясняя, таким образом,дубликаты.
Как заставить навсегда использовать приложение Electron Helper при разветвлении, а не само приложение Electron?