0

Jschを使用して、サーバー上のファイルをあるディレクトリから別のディレクトリにコピーしようとしています。このタスクを実行するために、SFTP プロトコルの put メソッドと get メソッドを使用しています。サーバーへのシェルアクセスがないため、このようにしています。以下は私のコードサンプルと私が得ている例外です。誰かがそれを解決する方法を教えてください。

OutputStream outputStream = null;
     InputStream inputStream = null;
    try
    {
        JSch jsch = new JSch();
            session = jsch.getSession(USER,HOST,PORT);
    session.setPassword(PASS);
    java.util.Properties config = new java.util.Properties();
    config.put("StrictHostKeyChecking", "no");
    config.put("PreferredAuthentications", "password"); 
    session.setConfig(config);
    session.connect();
    channel = session.openChannel("sftp");
    channel.connect();
    channelSftp = (ChannelSftp)channel;
        inputStream = channelSftp.get(fromFilename);
    channelSftp.put(inputStream,toFilename);
     } catch(Exception e){
        e.printStackTrace();
    } finally {
        if(inputStream != null)
            inputStream.close();
        if(outputStream != null)
            outputStream.close();
        channelSftp.exit();
    channel.disconnect();
    session.disconnect();
    } 

ここに例外があります

4: java.io.IOException: error: 4: RequestQueue: unknown request id 12
    at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.java:689)
    at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:540)
    at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:492)
4

1 に答える 1