【发布时间】:2009-09-28 17:48:18
【问题描述】:
我希望能够从 Windows 机器上运行的 JAVA 应用程序远程运行 Linux 机器上存在的进程。做这个的最好方式是什么?或者可能对我有帮助的在线资源?非常感谢。
【问题讨论】:
我希望能够从 Windows 机器上运行的 JAVA 应用程序远程运行 Linux 机器上存在的进程。做这个的最好方式是什么?或者可能对我有帮助的在线资源?非常感谢。
【问题讨论】:
您可以使用许多 Java SSH 客户端库中的任何一个,例如 javassh,只要 Linux 机器运行 sshd(并且防火墙都设置为允许 ssh 流量通过),这很可能是案子。有许多可能的方式来配置 ssh 身份验证,基本上可以归结为在网络上(安全地)发送密码,或者使用公钥/私钥对(RSA 或 DSA)——后者通常更可取,但您需要请与系统和网络管理员核实此问题...这并不是真正的软件开发问题,而是与系统管理和安全相关的问题。
【讨论】:
【讨论】:
您还可以制作一种客户端/服务器架构。您的 Java 客户端将向您的 Java 服务器 (~ webservice) 发送一个命令,该命令将执行所需的过程。 但显然,这取决于你的目标。 您需要以安全的方式执行此操作吗? 它是通过互联网还是在本地网络内? 最后,该进程是 Java 进程吗?
【讨论】:
您可以使用 ssh 命令登录系统 例子..
String[] cm = {
"ssh",
"username@hostIP" ,
"your command"
};
try
{
Process q= Runtime.getRuntime().exec(cm);
q.waitFor();
}
catch(Exception e) {}
【讨论】: