首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSHJ:如何使用StatefulSFTPClient

SSHJ:如何使用StatefulSFTPClient
EN

Stack Overflow用户
提问于 2018-05-08 08:19:12
回答 1查看 867关注 0票数 0

我很困惑..。我使用的是com/hierynomus/SFTP lib,下面的代码为我提供了ClassCastException:

代码语言:javascript
复制
SSHClient ssh = new SSHClient();
//... connect etc
StatefulSFTPClient client = (StatefulSFTPClient) ssh.newSFTPClient();

我需要StatefulSFTPClient,但我不知道怎么用.我是否需要用以下方式扩展SSHClient类:

代码语言:javascript
复制
public StatefulSFTPClient newStatefulSFTPClient()
        throws IOException {
    checkConnected();
    checkAuthenticated();
    return new StatefulSFTPClient(new SFTPEngine(this).init());
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-08 08:42:34

哦我的..。这不是最光明的时刻--它可以这样做:

代码语言:javascript
复制
StatefulSFTPClient client = new StatefulSFTPClient(new SFTPEngine(ssh).init());

并模仿SSHClient.newSFTPClient():

代码语言:javascript
复制
            StatefulSFTPClient client;          
            if(ssh.isConnected()){
                if(ssh.isAuthenticated()){
                    client = new StatefulSFTPClient(new SFTPEngine(ssh).init());
                } else {
                    throw new IllegalStateException("Not authenticated");
                }
            } else {
                throw new IllegalStateException("Not connected");
            }
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50229081

复制
相关文章

相似问题

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