如何使用node.js child_process API运行jar文件?
我试图在nodejs上运行一个jar文件,但它抛出了以下错误:
Error: Unable to access jarfile /home/example/Applications/example.jar
这是我在我的test.js中的以下代码:
var exec = require('child_process').exec, child; child = exec('/usr/bin/java -jar ~/Applications/example.jar', function (error, stdout, stderr){ console.log('stdout: ' + stdout); console.log('stderr: ' + stderr); if(error !== null){ console.log('exec error: ' + error); } });
我在这个命令中运行了我的test.js和nodejs,但是收到了上面的错误:
node test.js
我的代码是否有任何错误? 我不确定为什么这个时候会抛出一个错误。
从exec();
删除.jar
exec();
当使用-jar
参数时,java将会find没有.jar
的jar文件。 否则它喜欢..searchfilename.jar.jar
如果您在Windows命令提示符下使用它,则可以使用此代码。
var exec = require('child_process').exec, child; child = exec('java -jar C:\\..\\..\\yourjar.jar', function (error, stdout, stderr){ console.log('stdout: ' + stdout); console.log('stderr: ' + stderr); if(error !== null){ console.log('exec error: ' + error); } });
不要忘记双重奴隶,否则将是一团糟。