首页 > 解决方案 > 命令失败: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 文件的错误。

标签: javascriptjavaelectronelectron-builder

解决方案


我最终通过修改 package.json 将节点模块放在 app.asar.unpacked 文件夹中:

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

之后我使用以下内容来引用节点模块:

var merge = require(path.join(__dirname, '/../../app.asar.unpacked/node_modules/easy-pdf-merge'));

推荐阅读