sne*_*aky 2 javascript java node.js
我有一个node.js脚本和一个java程序在同一个文件夹(.class和.java和.js).我想从node.js脚本调用java程序.在终端我可以像这样调用java程序
java -cp java-json.jar:. PlutoMake "tests/android.png"
我看到了这个线程如何从NodeJs调用Java程序
我正在尝试做同样的事情,这里是node.js代码
var child = spawn('java', ['-cp java-json.jar:. PlutoMake', 'tests/android.png']);
Run Code Online (Sandbox Code Playgroud)
这似乎没有崩溃,但没有任何反应.java程序创建一个图像,但如果我通过节点执行它,它就不起作用.有谁知道什么是错的?
谢谢
您传递的参数数组应该每个参数有一个元素.你错误地将它们中的一些组合在一起.
var child = spawn('java', ['-cp', 'java-json.jar:.', 'PlutoMake', 'tests/android.png']);
Run Code Online (Sandbox Code Playgroud)
检查输出和退出代码可能很有用:
child.on('close', function (exitCode) {
if (exitCode !== 0) {
console.error('Something went wrong!');
}
});
// If you’re really just passing it through, though, pass {stdio: 'inherit'}
// to child_process.spawn instead.
child.stderr.on('data', function (data) {
process.stderr.write(data);
});
Run Code Online (Sandbox Code Playgroud)