我希望能够从运行在Windows机器上的JAVA应用程序远程运行Linux机器上存在的进程。做这个的最好方式是什么?或者可能对我有帮助的在线资源?非常感谢。
答案 0 :(得分:5)
你可以使用许多Java SSH客户端库中的任何一个,例如javassh,只要Linux机器运行sshd(并且防火墙都设置为让ssh流量通过),这可能是是这样的。有许多可能的方法来配置ssh身份验证,基本上可以在网上发送密码(安全地),或使用公钥/私钥对(RSA或DSA) - 后者通常更可取,但你需要请向系统和网络管理员咨询此问题......这不是软件开发问题,而是与系统管理和安全性相关的问题。
答案 1 :(得分:1)
答案 2 :(得分:0)
答案 3 :(得分:0)
您还可以构建一种客户端/服务器架构。您的Java客户端将向您的Java服务器(~webservice)发送一个命令,该命令将执行所需的进程。 但显然,这取决于你的目标。 你需要以安全的方式做到这一点吗? 是通过互联网还是通过本地网络? 最后,这个过程是一个Java过程吗?
答案 4 :(得分:0)
您可以使用ssh命令登录系统 例如..
String[] cm = {
"ssh",
"username@hostIP" ,
"your command"
};
try
{
Process q= Runtime.getRuntime().exec(cm);
q.waitFor();
}
catch(Exception e) {}