我想从我的java代码在另一台服务器上运行命令。
实施例。我的项目在服务器ip下运行,如---- xx.xxx.xxx.xx
但我必须在另一个服务器上运行命令,如----yyy.yy.yyy.yy(我拥有此ip的所有凭据和访问权限)
有可能吗?任何帮助将不胜感激。
答案 0 :(得分:3)
您可以采用多种方式,一种方法是在两个实例上创建自己的服务器客户端,并通过某种安全协议进行通信,以指示远程运行的代理执行命令
如果您不想重新发明轮子,可以使用SSH作为底层通信协议,使用sshj可以在远程计算机上连接并执行命令
答案 1 :(得分:3)
是的,你可以,其中一种方式:
在目标服务器(yyy.yyy.yyy.yyy)上,运行一个侦听来自客户端计算机(xxx.xxx.xxx.xxx)的命令的进程。在两个远程jvms之间有不同的通信方式,您可以选择其中任何一个进行套接字通信。
在目标计算机JVM上,您可以使用ProcessBuilder运行从客户端计算机接收的命令。
或者只搜索已经可用于此类任务的框架。