Подпроцесс Node.Js не запускается после нажатия на .app, но запускается при запуске из unix исполняемого файла - PullRequest
0 голосов
/ 01 августа 2020

Я работаю над приложением, использующим Electron JS с серверной частью python. Electron и Python общаются через python, используя flask для размещения веб-сервера, который возвращает JSON и т.п. , затем войдите в Contents / MacOS и запустите исполняемый файл unix внутри. Однако, если я просто дважды щелкну по .app, бэкэнд python не запустится.

Я не уверен, как просмотреть вывод консоли, чтобы узнать, что не так с командой для запуска python, но вот строка, которая запускает процесс python -

pythonBackend = require('child_process').spawn('/Library/Frameworks/Python.framework/Versions/3.8/bin/python3', [String(__dirname) + '/main.py'], {stdio: [process.stdin, process.stdout, process.stderr], detached: false});

Я использую довольно много файлов конфигурации, хранящихся на машине пользователя, поэтому избавляться от Electron и просто размещать в облаке не На мой взгляд, это не лучший вариант, но я могу ошибаться.

Программное обеспечение не подписано и не проверено, поэтому мне интересно, может ли это быть проблемой, когда MacOS блокирует выполнение команд оболочки / скрипты, если вы не подписаны.

...