我试图在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);
}
});
我在此命令中使用nodejs运行了test.js,但收到了上述错误:
node test.js
我的代码是否有任何错误?我不知道为什么它会在此时抛出错误。
答案 0 :(得分:10)
从.jar
exec();
使用.jar
参数时,java会找到没有-jar
的jar文件。其他就像...搜索filename.jar.jar
特殊雪花马克需要.jar
,如果省略则不起作用
(感谢Gʀɪᴍ)he also created a related question
答案 1 :(得分:3)
如果您在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);
}
});
不要忘记双重禁区,否则会一团糟。