从节点执行Java程序服务器端。js/Heroku应用程序?
我可以从节点调用Java程序吗。Heroku上的js应用程序
我有一个节点。js/Heroku应用程序。但现在需要添加服务器端功能,以便在输入数据文件上运行算法,并将数据输出为JSON格式。我已经有了一个Java库,可以读取文件并运行算法,在纯节点中重新编写它对我来说非常困难(最多)。js
因此,我们可以编写一个命令行程序,它接收一个输入文件并将结果传输到标准输出,例如
java mytask.class -cp ./mylibrary.jar --in /tmp/file.in > output.json
是否可以从Node发出对Java命令行程序的调用。js?我知道可以将Java应用程序部署到Heroku,但这里我想从一个节点执行一点Java。js应用
# 1 楼答案
你不是特别想要this和
child_process.exec()
吗请注意,上面的示例命令不正确,因为您试图通过管道传输到文件(
output.json
)。管道只在进程之间工作。子进程模块将允许您直接读取进程的stdout,而不需要该文件(类似于输入流)