Javascript Node js:spawn在linux中抛出错误
下面是我的代码,它在windows中工作,没有错误,但当我在服务器linux中设置项目时,它不工作并抛出错误Javascript Node js:spawn在linux中抛出错误,javascript,linux,node.js,Javascript,Linux,Node.js,下面是我的代码,它在windows中工作,没有错误,但当我在服务器linux中设置项目时,它不工作并抛出错误 var spawn = require('child_process').spawn, javaCmd= spawn('java', ['-cp',__dirname+'/Java/jdk1.7.0_45/lib/dom4j.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/geronimo-stax-api_1.0_spec-1.0.1.jar;'+_
var spawn = require('child_process').spawn,
javaCmd= spawn('java', ['-cp',__dirname+'/Java/jdk1.7.0_45/lib/dom4j.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/geronimo-stax-api_1.0_spec-1.0.1.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/gson-2.2.4.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/mysql-connector-java-5.1.6.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/ooxml-schemas-1.0.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/poi-3.9-20121203.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/poi-ooxml-3.9.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/xmlbeans-2.5.0.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/xmlbeans-xmlpublic-2.6.0.jar;'+__dirname+'/Java/jdk1.7.0_45/lib/excelreader.jar', 'astral.excelreader.Main', catid, id,target_path]);
javaCmd.stdout.on('data', function (data) {
console.log(data);
});
javaCmd.stdout.on('close', function(code) {
console.log(code);
});
javaCmd.stderr.on('data', function (data) {
console.log(data);
});
下面是错误
events.js:72
throw er; // Unhandled 'error' event
^
Error: spawn ENOENT
at errnoException (child_process.js:980:11)
at Process.ChildProcess._handle.onexit (child_process.js:771:34)
有人知道原因吗?我没有为java设置任何其他路径。我试图使用$vi~/.bash_配置文件进行设置,但得到以下响应
-bash: $: command not found
任何人都知道如何在linux服务器中设置路径尝试使用这个spawn'/Java/jdk1.7.0_45/bin/Java',[]尝试在失败的代码周围放置一个Try-catch块,以便捕获并输出错误。这将为您提供更多信息,帮助您找出错误的实际原因。此外,如果您在node.js spawn enoint上快速搜索堆栈溢出,您将发现大多数人都有路径问题,我敢打赌您的问题也会一样。@damphat不起作用,您知道如何在Linux中设置java路径吗?当您将应用程序从Windows转换到Linux时,最可能遇到的错误与区分大小写的文件系统有关。