Приложение Node / React, упаковка для Linux с ПКГ - PullRequest
0 голосов
/ 07 января 2020

Я пытаюсь упаковать приложение узла / реагирования как собственный исполняемый файл для каждого из Ma c / Windows / Linux, используя пакет узла 'pkg' (https://github.com/zeit/pkg/).

Я могу без проблем запустить приложение с узлом на моей машине. Мне также удалось использовать pkg для сборки и запуска версии Ma c, и она работает, как и ожидалось. В версии Linux сборка pkg работает (ie без ошибок), но я получаю ошибку при запуске исполняемого файла.

Error spawn /snapshot/IXmapsClient/node_modules/open/xdg-open ENOENT (более подробная версия ниже)

Насколько я понимаю, снимок - это «внутренний» каталог, созданный pkg. Dir и файл модуля узла существуют в ~ / Dev / IXmaps / IXmapsClient / node_modules / open / и имеют правильные разрешения (вместе со всеми другими обязательными модулями node_modules, используемыми этим приложением).

Подробно о том, что Я работаю с:

  • Ubuntu 18.04 (я работаю на виртуальной машине Virtualbox с OSX внизу, если это актуально)
  • Узел 10
  • Pkg 4.4.2 (pkg -t узел 10- linux -x64 сервер. js -o dist / linux / IXmapsClient --config package. json)

Полное сообщение об ошибке:

events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: spawn /snapshot/IXmapsClient/node_modules/open/xdg-open ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
    at onErrorNT (internal/child_process.js:415:16)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (pkg/prelude/bootstrap.js:1317:13)
    at startup (internal/bootstrap/node.js:320:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:659:3)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
    at onErrorNT (internal/child_process.js:415:16)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:659:3)

1 Ответ

0 голосов
/ 18 января 2020

Если кто-то еще сталкивается с этой проблемой, похоже, что она решена. Автор модуля 'pkg' добавил поддержку для модуля 'open' с этим коммитом: https://github.com/zeit/pkg/commit/db8487acd2d40af7b0cb1e63e133a707f93d725f

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