Jcraft 1.5 SFTP覆盖失败ID 4

时间:2018-04-25 15:32:46

标签: java sftp put jsch overwrite

我的覆盖不起作用并返回Failure 4 ID。我可以在没有任何问题的情况下写入此目的地,但是当过度保护失败时。当我使用winscp并且在这里使用相同的用户信用时,我可以编写并覆盖而不会出现问题。不知道我理解我的覆盖选项在这里发生了什么。如果文件在那里并且overwrite为true,则应该覆盖具有相同名称的文件,但它不起作用。我正在使用Jcraft 1.50并且我不想升级到1.54,因为在我恢复库之前我遇到了与该版本相同的问题。

RGB

1 个答案:

答案 0 :(得分:0)

所以我解决了这个问题。好像这种方法好像.....

sftpChannel.put(fileByteInputStream, fileName, sftpChannel.OVERWRITE); 

无效。尽管Jcraft的文档清楚地说明了......

put(String src, String dst, int mode)
//Uploads a file.

当我将其改为不同的put方法时......

sftpChannel.put(fileByteInputStream, fileName, null, sftpChannel.OVERWRITE); 

我的覆盖问题似乎通过使用put方法消失了......

put(String src, String dst, SftpProgressMonitor monitor, int mode)
//Uploads a file.

当文件已经存在并且我想覆盖它时,我能够在没有任何失败的情况下进行传输。