linux - com.jcraft.jsch.JSchException : session is down 错误

标签 linux jsch

我使用以下代码通过 Windows 在 Linux 上执行命令:

  JSch jsch=new JSch();  
    Session session=jsch.getSession(user, host, port);
    session.setConfig(props);
    session.setPassword(pwd);
    session.connect();
    ChannelShell channel = (ChannelShell)session.openChannel("shell");
    boolean ch = channel.isConnected();
    channel.sendSignal("ls");
    channel.connect();
    boolean ch1 = channel.isConnected();

但是它在 channel.connect(); 行失败了:

com.jcraft.jsch.JSchException: session is down
at com.jcraft.jsch.Channel.connect(Channel.java:172)
at com.jcraft.jsch.Channel.connect(Channel.java:132)

如何修复这样的错误?

最佳答案

尝试使用一些轮询,您可以在其中检查 session 的事件状态。作为引用,您可以查看this 链接

关于linux - com.jcraft.jsch.JSchException : session is down 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24408618/

相关文章:

java - 如何将字符串写入位于远程服务器 (linux) 中的文件

android - 使用 Android 应用程序发送 SSH 命令

java - Java开发定时任务并在Linux服务器上运行

linux - 在编译过程中,它在 "cannot find -lexecinfo"处失败

linux - Windows 上 Eclipse IDE 的系统范围 SSH 配置文件

Android Java 应用程序 Jsch 使用按钮发送命令

java - 如何使用 Java ssh JSch 和 jcabi-ssh 将密码传递给 scp

regex - grep 可以删除上下文,但不能删除整行吗?

regex - Linux 正则表达式 - 在行首使用 OR 运算符

java - 如何使用在我的 Windows 机器上运行的 Java 代码写入 Linux 中的文件?