是否可以通过Java程序远程执行命令(ssh)

时间:2015-04-25 21:47:07

标签: java android ssh ubuntu-server

我希望通过一些(java)API ssh到一个Ubuntu服务器。这甚至可能吗?

以下是我正在寻找的内容:

  • 我在ubuntu机器上安装了OpenStack。
  • 使用ubuntu服务器启动实例。
  • 在此虚拟机上安装了Android SDK。
  • 通过ssh进入这个虚拟机,我能够创建一个AVD和 运行模拟器(无头)。

我打算做的是提供一些Web客户端,只需点击一下按钮即可启动模拟器(考虑到所有内容已经设置,即虚拟机启动并运行SDK)。

我想我需要执行命令来启动模拟器。但是有可能通过一些(java)API来做到这一点吗? 我看了一下openstack4j和JClouds,但找不到多少。 我试图找出它正在使用一些ssh客户端库。是吗?

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

请查看此CloudServersPublish.java示例,尤其是configureAndStartWebserver()方法。

另请注意SshjSshClientModule如何添加到构造函数中的ComputeServiceContext

您还需要确保拥有jclouds-sshj依赖项。

<dependency>
  <groupId>org.apache.jclouds.driver</groupId>
  <artifactId>jclouds-sshj</artifactId>
  <version>1.9.0</version>
</dependency>