Упакованное приложение Electron не запускается при запуске из Dock, но отлично работает при запуске из терминала - PullRequest
0 голосов
/ 16 апреля 2019

Так что это немного странно.У меня есть приложение Electron, упакованное с использованием electron-builder.Приложение пытается порождать процесс Java с использованием child_process.spawn() и использует minimal-request-promise для опроса каждые 500 мс, чтобы увидеть, запущен ли локальный API.

Когда я запускаю приложение из терминала с open myApp.app/Contents/MacOS/myapp, оно работает нормально,Я вижу консольный вывод при запуске приложения SpringBoot и после его инициализации появляется BrowserWindow.

Однако, если я просто запускаю myApp.app (из Dock, Spotlight, Terminal и т. Д.), В Dock появляется значок, но ничего не происходит, даже после того, как он остается один на 10 минут.

Я предполагаю, что это потому, что произошла ошибка, порождающая процесс (и поскольку мы не запускаем исполняемый файл, мы не получаем вывод терминала, чтобы сказать об этом .. grr).

Что было бы лучшимспособ попробовать и отладить это?Я не могу понять, почему это работает в одну сторону, а не в другую, если это не проблема с разрешениями?

1 Ответ

0 голосов
/ 17 апреля 2019

Оказывается, проблема заключалась в том, что мой API генерировал исключения, потому что файл базы данных, который он пытался создать, находился внутри упакованного приложения.Изменили расположение, и теперь все работает нормально.

Для тех, кто находится в аналогичной позиции, вы можете использовать electron-log для входа в файл, а не в консоль (поскольку у вас нет консолииз файла .app).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...