3:权限被拒绝,在com上,jcraft,jsch,通道Sftp,抛出状态错误(通道Sftp. java:2846)

anhgbhbe  于 2023-03-06  发布在  Java
关注(0)|答案(2)|浏览(578)

我们有一个java代码,它连接到一个目标服务器,并在目标文件夹中放置多个文件,但当它放置第一个文件,并返回放置第二个文件时,它给出了以下错误。
信息:下一个身份验证方法:键盘交互式信息:验证成功(键盘交互)。3:权限被拒绝。在com.jcraft.jsch.通道Sftp.抛出状态错误(通道Sftp. java:2846)在com. jcraft. jsch.通道Sftp._put(通道Sftp. java:594)在com.jcraft.jsch.通道Sftp.put(通道Sftp. java:475)在com.jcraft.jsch.通道Sftp.put(通道Sftp. java:365)在TravelFTPUload.main(TravelFTPUload. java:103)信息:正在断开与12.10.219.115端口22的连接信息:捕获异常,由于Socket关闭而离开主循环
Java代码片段:

for (int j = 0; j < listFiles.length; j++) 
{
    fN = listFiles[j].getAbsolutePath();
    destFn = listFiles[j].getName();
    fileNameList.append(destFn+"<br />");

    // Ex:GS2-20141128
    sftpChannel.put(fN, destFn);

}

有人能帮我解决这个错误吗?当连接到不同的目标文件夹时,代码工作正常。

ufj5ltwl

ufj5ltwl1#

我有一个similar problem,它应该是一个不存在的文件夹。你检查过这个文件夹是否存在吗?它的路径是否正确?

ctehm74n

ctehm74n2#

确保在通道中指明工作目录
使用通道.cd(“/路径目录”)

ChannelSftp channel = (ChannelSftp) session.openChannel("sftp");
channel.connect();
channel.cd("/path_directory");

相关问题