【发布时间】:2013-12-31 19:19:53
【问题描述】:
我正在通过 sftp(JSCH) 连接到 FTP 服务器。
每次我使用端口 21 连接到 FTP 服务器时,它总是在 session.connect() 处挂起。
它不会抛出任何异常。但是当我使用其他端口时。它可以工作并引发异常。
有什么办法可以捕捉到错误吗?
这是我的代码示例。
public static void main(String[] args) throws SftpException {
JSch jsch = new JSch();
try {
Session session = jsch.getSession("username", "host", 21);
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword("password");
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp channelSftp = (ChannelSftp) channel;
session.disconnect();
channelSftp.disconnect();
} catch (JSchException e) {
log("Cannot make connection to FTP server ");
e.printStackTrace();
}
}
【问题讨论】:
-
没有“其他端口”。端口 22 是 SSH 端口。 21 端口当然不是。
-
我知道没有其他端口。我的问题是我期待它抛出异常。但它只是挂在 session.connect()
-
我也面临同样的问题