javascript - 命令失败: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 文件的错误。
解决方案
我最终通过修改 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'));
推荐阅读
- elasticsearch - 水平缩放的意思
- jquery - 有什么方法可以将值发送到 MVC 中的受保护覆盖 void OnActionExecuted
- asp.net-mvc - 使用 cookie 跨平台通信 Web 应用程序
- vba - 如何在表单中使用级联删除/更新选定元素?
- python - Dockerfile 返回非零代码:1
- java - 为什么从 Java 应用程序运行 MAKE 会导致错误消息?
- python - 使用 Jupyter Notebook 中的输入运行 python 脚本
- php - 什么是 gmp_nextprime 算法?
- r - 使用 tidygraph 将来自相同两个节点的两条边合并为一条
- python - 如何在 Azure 上每 24 小时自动运行一次我的 python 脚本?