我可以使用给定的凭据成功连接WinSCP到SFTP服务器 . 但是当使用apache vfs从java做这件事时我得到错误:
Caused by: org.apache.commons.vfs2.FileSystemException: Could not connect to SFTP server at "sftp://username:***@server_addres/".
at org.apache.commons.vfs2.provider.sftp.SftpClientFactory.createConnection(SftpClientFactory.java:170)
at org.apache.commons.vfs2.provider.sftp.SftpFileProvider.doCreateFileSystem(SftpFileProvider.java:97)
... 22 more
Caused by: com.jcraft.jsch.JSchException: Auth fail
at com.jcraft.jsch.Session.connect(Session.java:512)
at com.jcraft.jsch.Session.connect(Session.java:183)
at org.apache.commons.vfs2.provider.sftp.SftpClientFactory.createConnection(SftpClientFactory.java:166)
我检查过凭据,它们与我尝试连接WinSCP时的凭据完全相同 . WinSCP可以成功连接,但我的java代码出现上述错误(Auth失败) .
有没有人知道可能是什么问题?
我连接的机器的公共IP范围已被添加到防火墙例外,作为另一方的可信IP .
请帮助,非常感谢任何想法 .
亲切的问候,
misamas