首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SFTP连接错误-消息存储已达到EOF。

SFTP连接错误-消息存储已达到EOF。
EN

Stack Overflow用户
提问于 2016-08-25 12:36:23
回答 1查看 2.3K关注 0票数 0

当我试图使用"com.enterprisedt.net.ftp.ssh.SSHFTPClient"类(edtFTPj/PRO --一个商业的文件传输客户端)连接到SFTP的远程主机时,我得到了异常“消息存储已达到EOF"。

我能够用相同的代码成功地连接到SFTP的另一个远程主机。

是否有任何特定于特定主机的配置导致了问题?如果是这样的话,有什么办法可以证实吗?除了这条异常消息之外,我没有任何其他日志。但是,我可以更改代码以尝试任何建议的调试选项。

请注意,我不能使用其他SFTP库,因为我的现有代码已经在使用这个库了。

代码语言:javascript
复制
com.enterprisedt.net.j2ssh.authentication.AuthenticationProtocolException: Failed to read messages
    at com.enterprisedt.net.j2ssh.authentication.AuthenticationProtocolClient.a(AuthenticationProtocolClient.java:265)


Caused by: com.enterprisedt.net.j2ssh.transport.MessageStoreEOFException: The message store has reached EOF
    at com.enterprisedt.net.j2ssh.transport.SshMessageStore.getMessage(SshMessageStore.java:177)
    at com.enterprisedt.net.j2ssh.transport.SshMessageStore.getMessage(SshMessageStore.java:110)
    at com.enterprisedt.net.j2ssh.authentication.AuthenticationProtocolClient.a(AuthenticationProtocolClient.java:261)
    ... 31 more
EN

回答 1

Stack Overflow用户

发布于 2021-10-07 16:35:30

我认为图书馆本身有问题。并发问题。当您尝试同时打开多个连接(在相同毫秒内)时,我可以始终如一地再现此错误和其他随机错误,例如,当您使用多个线程进行操作时。即使使用了几个不同的SSHFTPClient实例,也会发生这种情况。我认为在这些类中应该有一个静态的东西。

我必须使用第三个变量同步访问任何SSHFTPClient实例,如下所示:

代码语言:javascript
复制
final static String sincronizadorUnico = "";

    synchronized (sincronizadorUnico) {
        // use the code to connect
    }

它会起作用的。我会把错误报告给图书馆。我正在使用7.1.0版本的库。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39145515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档