Coolenhai
Coolenhai
2011-11-09 10:03
浏览 433
已采纳

sftp 异常,有遇到的吗?求解

com.jcraft.jsch.JSchException: Auth cancel
at com.jcraft.jsch.Session.connect(Session.java:460)
at com.jcraft.jsch.Session.connect(Session.java:154)
at cn.vivame.util.ftp.SftpServerAccess.connect(SftpServerAccess.java:100)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • leixwlove
    leixwlove 2011-11-09 10:03
    已采纳

    session.connect();之前看看password设置了么?
    if(ua!=null){
    auth_cancel=false;
    try{
    [color=red] auth=ua.start(this); [/color] if(auth &&
    JSch.getLogger().isEnabled(Logger.INFO)){
    JSch.getLogger().log(Logger.INFO,
    "Authentication succeeded ("+method+").");
    }
    }
    catch(JSchAuthCancelException ee){
    [color=red] auth_cancel=true;[/color] }
    catch(JSchPartialAuthException ee){
    smethods=ee.getMethods();
    smethoda=Util.split(smethods, ",");
    methodi=0;
    //System.err.println("PartialAuth: "+methods);
    auth_cancel=false;
    continue loop;
    }
    catch(RuntimeException ee){
    throw ee;
    }
    catch(Exception ee){
    //System.err.println("ee: "+ee); // SSH_MSG_DISCONNECT: 2 Too many authentication failures
    break loop;
    }
    }
    }
    break;
    }

      if(!auth){
       [color=red] if(auth_cancel)
          throw new JSchException("Auth cancel");[/color]        throw new JSchException("Auth fail");
      }
    

    [color=red][/color]

    另见UserAuthPassword 中
    [color=red] if(!userinfo.promptPassword("Password for "+dest)){
    throw new JSchAuthCancelException("password");
    //break;
    }

    String _password=userinfo.getPassword();
    if(_password==null){
      throw new JSchAuthCancelException("password");
      //break;
    }[/color]
    
    点赞 评论
  • leixwlove
    leixwlove 2011-11-09 10:03

    也用jsch的sftp,没遇到类似为题。建议贴代码看看

    点赞 评论
  • zhaoshun0417
    zhaoshun0417 2014-12-30 22:10

    请问该问题是否跟内网环境有关系?我这边通过两层代理访问报该异常。
    com.jcraft.jsch.JSchException: Auth cancel
    at com.jcraft.jsch.Session.connect(Session.java:511)
    at com.jcraft.jsch.Session.connect(Session.java:183)
    at com.chinainsurance.application.prpall.infsystem.fileutil.sftp.SFTPChannel.getChannel(SFTPChannel.java:59)

    点赞 评论

相关推荐