java - jsch channel 未开通

标签 java exception sftp jsch

我试图同时打开 exec 和 sftp channel ,但是当我打开 sftp channel 时出现错误,代码(简化)是这样的:

JSch connection = new JSch();
Session session = connection.getSession(user, ip, port);
session.setPassword(password);
session.connect(15000);
ChannelExec channel = (ChannelExec) session.openChannel("exec");
//exec commands whit channel
Channel ch;
ch = ssh.session.openChannel("sftp");
ch.connect();//-------ERROR!
ChannelSftp sftp = (ChannelSftp)ch;

错误是:“com.jcraft.jsch.JSchException: channel 未打开。”

最佳答案

尝试增加超时:

  ch.connect(60 * 1000); // A minute wait for connection.

关于java - jsch channel 未开通,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31536395/

相关文章:

java - Netbeans 混淆

c++ - 为什么 throw 本身会导致异常?

Java:枚举中的异常?

java - 发现多个文件的操作系统独立路径为 'META-INF/groovy-release-info.properties'

Cassandra 的 Java 版本

java - 在 TextView 中使用不同的字体样式

linux - 两个远程服务器linux之间的数据传输(sftp)

windows - 无法通过 psftp 使用通配符上传所有文件

c#-2.0 - 在2.0中实现SFTP

java - 通过组合框向 Java 文本字段添加天数