有人可以通过Web Java应用程序告诉我如何在远程计算机(linux)上运行应用程序以及如何知道此应用程序是否已经完成的最佳方式。我知道应用程序会自动终止,所以只想等待答案。
非常欢迎任何帮助或建议。
答案 0 :(得分:2)
我对措辞感到困惑,所以我将假设以下内容: Web应用程序和远程应用程序在两台不同的计算机上运行,远程应用程序在Linux上运行。
如果是这种情况,那么最好使用Java库的SSH库(有几个 - JSch,sshj,Ganymed SSH-2来连接远程机器这是一种比使用ProcessBuilder更好的方法,因为它将您提供密码的问题抽象给终端(which can get quite tricky)。
我不确定你的意思是什么:“我知道应用程序会自动终止,所以只是想等待答案。”所以我会另外假设你想知道远程进程是否成功终止。我不确定上面发布的任何SSH库是否会允许您以非平凡的方式获取远程进程状态,因此最好将shell包装器写入远程命令,该命令将返回可解析的消息。 / p>
如果您在同一台计算机上运行,请使用ProcessBuilder。