当前位置 : 主页 > 网页制作 > Nodejs >

从Node.js / Heroku应用程序执行Java程序服务器端?

来源:互联网 收集:自由互联 发布时间:2021-06-16
我可以从Heroku上的Node.js应用程序调用 Java程序吗? 我有一个Node.js / Heroku应用程序.但现在需要添加服务器端功能以在输入数据文件上运行算法并将数据输出为JSON格式.我已经有了一个可
我可以从Heroku上的Node.js应用程序调用 Java程序吗?

我有一个Node.js / Heroku应用程序.但现在需要添加服务器端功能以在输入数据文件上运行算法并将数据输出为JSON格式.我已经有了一个可以读取文件并运行算法的Java库,而且我很难(最多)在纯Node.js中重写它.

因此,可以编写一个命令行程序,它接受一个输入文件并将结果传递给stdout,例如

java mytask.class -cp ./mylibrary.jar –in /tmp/file.in\u0026gt; output.json

是否可以从Node.js中调出对Java命令行程序的调用?我知道可以将Java应用程序部署到Heroku,但是这里想要从Node.js应用程序执行一些Java.

你不想特别想要 this和child_process.exec()吗?

Node provides a tri-directional popen(3) facility through the
child_process module.

It is possible to stream data through a child’s stdin, stdout, and
stderr in a fully non-blocking way.

请注意,上面的示例命令不正确,因为您正在尝试管道到文件(output.json).管道仅在进程之间工作.子进程模块允许您直接读取进程的标准输出,而您不需要该文件(类似于输入流)

网友评论