Java 将文件复制到SFTP服务器的Jsch示例

Java 将文件复制到SFTP服务器的Jsch示例,java,sftp,jsch,Java,Sftp,Jsch,以下是我的程序…但在会话后此程序不起作用。connect() 输出是 Creating session. Session created. Session connected before. INFO: Connecting to ftp.olstr.com port 21 INFO: Connection established 会话结束后,我的代码控件没有移动。connect()行。不同的连接有不同的端口,如FTP、FTPS、SFTP、FTP over SSH。使用适当的端口。这些是港口。

以下是我的程序…但在会话后此程序不起作用。connect()

输出是

Creating session.
Session created.
Session connected before.
INFO: Connecting to ftp.olstr.com port 21
INFO: Connection established

会话结束后,我的代码控件没有移动。connect()行。

不同的连接有不同的端口,如FTP、FTPS、SFTP、FTP over SSH。使用适当的端口。这些是港口。20个FTP数据(文件传输协议),21个FTP(文件传输协议),22个SSH(安全外壳)<代码>使用会话。连接(超时)。注释堆栈跟踪,以便我知道确切的错误是什么。请尝试使用22,看看错误是否仍然存在。

您尝试连接的服务器的可能副本是
ftp
sftp
?默认端口:
ftp=21,sftp=22
我正在使用ftp服务器。我的sftp服务器端口是3335。。但当我尝试时,我收到了创建会话的消息。已创建会话。之前已连接会话。信息:连接到ftp.olstr.com端口3335无法连接到ftp服务器。com.jcraft.jsch.JSchException:java.net.ConnectException:连接超时:连接错误:com.jcraft.jsch.JSchException:java.net.ConnectException:连接超时:连接进程完成。我认为您使用的是ftps而不是sftp。ftps是ssl上的ftp,它与在ssh端口上运行的sftp完全不同。谢谢,我一直在检查我的jscp代码,使用端口21,不知道sftp强制使用端口22。谢谢这不是一项授权。它是默认端口。您可以配置它。
Creating session.
Session created.
Session connected before.
INFO: Connecting to ftp.olstr.com port 21
INFO: Connection established