如何从Java运行Node.js进程?

如何从Java运行Node.js进程?,java,node.js,Java,Node.js,我想从Java运行“node index.js”,但不断出现错误,说找不到“node”(即使在cmd上运行node) 已尝试: 字符串s; 过程p; 试一试{ p=Runtime.getRuntime().exec(“node index.js”); BufferedReader br=新的BufferedReader( 新的InputStreamReader(p.getInputStream()); 而((s=br.readLine())!=null) System.out.println(“

我想从Java运行“node index.js”,但不断出现错误,说找不到“node”(即使在cmd上运行
node

已尝试:

字符串s;
过程p;
试一试{
p=Runtime.getRuntime().exec(“node index.js”);
BufferedReader br=新的BufferedReader(
新的InputStreamReader(p.getInputStream());
而((s=br.readLine())!=null)
System.out.println(“行:+s”);
p、 waitFor();
System.out.println(“exit:+p.exitValue());
p、 破坏();
}捕获(例外e){
e、 printStackTrace();
}
如果您的代码(上面)不工作,一种可能的解释是
节点
命令不在
java
进程使用的环境中的路径上


如果这是问题所在,您可以在
exec
调用中使用
节点
命令的绝对路径。另一个解决方案是改变启动
java
的方式;e、 g.在运行
java

的脚本中适当设置
PATH
变量,您如何尝试从java运行此脚本?我一直认为这更像是一个JavaScript构造,而且它本身在java中没有太多使用,但我可能错了。请根据@hoverCraftFullOfels编辑的说明并显示您的代码和问题的详细信息。您检查了吗?是,我在线程“main”java.io.IOException中得到了类似
异常的错误:无法运行程序“node example.js”:CreateProcess error=2,系统找不到指定的文件