Сбой команды: java -jar

Я использую пакет: https://www.npmjs.com/package/easy-pdf-merge

Чтобы объединить несколько файлов PDF, и он отлично работает при запуске из NodeJS. Однако, когда я упаковываю его через Electron-Builder, я получаю следующую ошибку "Команда не выполнена: java -jar". Я предполагаю, что это как-то связано с тем, что Electron-Builder помещает модули узлов в "app.asar".

Я скачал Java и добавил в Path (что означает, что он отлично работает из CMD)

var merge = require('easy-pdf-merge');

merge(filePaths, 'merged.pdf', function (err) {

    if (err) {
        console.log('Error: ' + err);
    }

    resolve('ok');
});

Я не очень разбираюсь в Java или Electron-Builder, поэтому любой вклад будет полезен

РЕДАКТИРОВАТЬ: я обновил код с закрывающей скобкой и удалил ошибку с открытием файла JAR.

1 ответ

В итоге я поместил модуль узла в папку app.asar.unpacked, изменив package.json:

  "build": {
    "asar": true,
    "asarUnpack": [
      "node_modules/easy-pdf-merge/**/*"
    ]
  },

Впоследствии я использовал следующее для ссылки на модуль узла:

var merge = require(path.join(__dirname, '/../../app.asar.unpacked/node_modules/easy-pdf-merge'));
Другие вопросы по тегам