Java通过SSH2协议运行远程程序

我使用Ganymed库,访问http://www.ganymed.ethz.ch/ssh2/网页,下载最新版本的程序,解压后,在NetBeans下如下设置。



然后在我们的Java应用程序中,加入Ganymed-ssh2-build2库。


假定我在192.168.0.110的UBuntu Server 9.04系统的/home/chenshu目录下放了一个文件夹test,test文件夹对应测试Java类的包名test,我们在该机器上运用javac ./test/Main.java编译后,在另一台机器上运行Java程序,该程序通过调用我们新建的Ganymed-ssh2-build2库的类完成远程调用功能:

package javaapplication3;

import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.ConnectionInfo;
import ch.ethz.ssh2.Session;
/**
 *
 * @author chenshu
 */
public class Main {
    public static void main(String[] args) {
        try {
            Connection con = new Connection("192.168.0.110");
            ConnectionInfo info = con.connect();
            boolean result = con.authenticateWithPassword("chenshu", "770328");
            Session session = con.openSession();
            session.execCommand("java test.Main");
        } catch (Exception ex) {
            System.out.println(ex.getLocalizedMessage());
        }
    }
}

现在看看服务器上,多了一个test.txt,那是test.Main类运行后产生的文件。你们可以随便放一个Java测试程序,这里test程序代码已经无关紧要了。
搞定!






再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

猜你喜欢

转载自www.cnblogs.com/skiwnywh/p/10321356.html
今日推荐