我需要连接到SFTP服务器的帮助?有没有人有可用的代码?
我找到了像这样的东西
package test.JSch;
import com.jcraft.jsch.*;
public class TestJSch {
public static void main(String args[]) {
JSch jsch = new JSch();
Session session = null;
try {
session = jsch.getSession("USSERNAME", "HOST", 22);
//session.setConfig("StrictHostKeyChecking", "no");
session.setPassword("PASSWORD");
System.out.println("1");
session.connect();
System.out.println("2");
Channel channel = session.openChannel("sftp");
System.out.println("3");
channel.connect();
System.out.println("4");
ChannelSftp sftpChannel = (ChannelSftp) channel;
sftpChannel.get("remotefile.txt", "localfile.txt");
sftpChannel.exit();
session.disconnect();
} catch (JSchException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
} catch (SftpException e) {
e.printStackTrace();
}
}
}
但这是输出
com.jcraft.jsch.JSchException: java.net.ConnectException: Connection timed out: connect
at com.jcraft.jsch.Util.createSocket(Util.java:258)
at com.jcraft.jsch.Session.connect(Session.java:186)
at com.jcraft.jsch.Session.connect(Session.java:145)
at test.JSch.TestJSch.main(TestJSch.java:17)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at com.jcraft.jsch.Util.createSocket(Util.java:252)
... 3 more
这段代码有什么问题?
发布于 2013-12-17 01:13:23
发布于 2011-06-09 17:21:57
这是一个关于Stackoverflow的早期问题,对于这个问题,公认的答案是使用JSch library。
How to retrieve a file from a server via SFTP?
我看到您尝试通过JSch连接,但得到了一个错误。
我建议首先检查您是否可以从客户端(测试程序的同一台计算机)连接到sftp机器,使用标准的sftp客户端(如Windows上的Filezilla ),或者在*nix系统中的终端上使用sftp
命令。
发布于 2011-06-09 17:22:56
我已经成功地使用了JSch library。它有臭名昭著的糟糕文档,但传言它将非常严格和有效地实现其SSH功能。
https://stackoverflow.com/questions/6290613
复制相似问题