2

我在通过 apache FTP 客户端连接到我的 ftp 服务器时卡住了。我发现了很多程序,但我无法通过下面的代码连接到我的 ftp 服务器。

FTPClient ftpClient = new FTPClient();
 ftpClient.connect("169.144.76.33");
 ftpClient.login("root", "re123set");

Exception:

java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:327)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:193)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
    at java.net.Socket.connect(Socket.java:546)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:176)
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:268)

但是每当我尝试通过带有 ip、用户名、密码、端口(没有端口无法连接)的文件 zilla 进行连接时。我能够连接到 ftp 服务器。

所以请帮我解决这个问题..

4

1 回答 1

1

从您需要在 Filezilla 中输入一个端口(默认为 FTP 端口21)的事实来看,我假设您没有向以下人员提供一些信息FTPClient

1) 端口号(假设它与默认值不同21)。要连接到非默认端口,请使用Connect带两个参数的重载:

public void connect(String hostname, int port)

2)您可能正在使用隐式 SSL/TLS 加密,FileZilla(但不是FTPClient)可以从端口号假设990

3)您实际上想使用 SFTP(基于sftp您的问题的标签)。FTPClient不支持 SFTP 协议,它与 FTP 完全不同。请参阅如何通过 SFTP 从服务器检索文件?

于 2013-05-13T08:44:38.663 回答