如何在Java中通过TLS/SSL(FTPS)服务器连接到FTP

如何在Java中通过TLS/SSL(FTPS)服务器连接到FTP,java,ssl,ftp,ftps,Java,Ssl,Ftp,Ftps,我无法通过TLS/SSL(FTPS)服务器连接到FTP。我通过使用SimpleFTP库,我可以在没有SSL的情况下连接FTP服务器,但无法连接FTPS 它在第2行(ftp.connect)给了我这个错误 SimpleFTP在连接到FTP服务器时收到未知响应: 220------欢迎来到纯FTPd[privsep][TLS]---------- 我使用下面的代码 SimpleFTP ftp = new SimpleFTP(); // Connect to an FTP server on por

我无法通过TLS/SSL(FTPS)服务器连接到FTP。我通过使用SimpleFTP库,我可以在没有SSL的情况下连接FTP服务器,但无法连接FTPS

它在第2行(ftp.connect)给了我这个错误

SimpleFTP在连接到FTP服务器时收到未知响应:
220------欢迎来到纯FTPd[privsep][TLS]----------

我使用下面的代码

SimpleFTP ftp = new SimpleFTP();

// Connect to an FTP server on port 21.
ftp.connect("xxx.xxx.xxx.xxx", 21, "username", "pwd");
//getting error at (ftp.connect) above line

// Set binary mode.
ftp.bin();

// Change to a new working directory on the FTP server.
ftp.cwd("web");
ftp.disconnect();
SimpleFTP
类/库根本不支持TLS/SSL


使用来自的

请参阅,仅用
FTPSClient
替换
FTPClient

FTPSClient ftpClient = new FTPSClient();
ftpClient.connect(host);
ftpClient.login(user, password);

FTPSClient
类默认为显式TLS/SSL(推荐)。在极少数情况下,您需要隐式TLS/SSL,请使用