2017-03-10 24 views
0

Jcraft JSch(http://www.jcraft.com/jsch/)を使用してSFTP経由で別のホストにファイルをコピーしようとしています。私は、エラーの下に取得しています:com.jcraft.jsch.JSchException:java.io.IOException:パイプが閉じた

Connecting via SSH to somehost:22 
com.jcraft.jsch.JSchException: java.io.IOException: Pipe closed 
at com.jcraft.jsch.ChannelSftp.start(ChannelSftp.java:315) 
at com.jcraft.jsch.Channel.connect(Channel.java:152) 
at com.jcraft.jsch.Channel.connect(Channel.java:145) 

関連するコードを以下のようになります。

Channel channel = null; 
    ChannelSftp channelSftp = null; 
    Exception cause = null; 
    try { 
     connect(); 
     channel = session.openChannel("sftp"); 
     channelSftp = (ChannelSftp)channel; 
     channelSftp.connect(); 
     assert channelSftp != null; 
     try { 
     channelSftp.ls(destDir); 
     } catch(SftpException sftpEx) { 
     // Create destination folder, if it does not exist 
     execCommand("some command" + destDir); 
     } 

これは動作しません最新jcraftのバージョンにアップグレードし、先週からすべて良かったです。私はthisthis(ページの最後のコメントを参照)を参照しましたが、根本的な原因には達しませんでした。どんな助け?

+0

ネットワークを確認しましたか?コマンドラインでtelnetやsshを試してみましたか? –

+0

確かに、私は環境へのアクセスを失った。問題を再現して更新します。私はそれがネットワーク/ホストの問題であると感じています。 –

答えて

0

SSHは問題なく動作していました。 SSH設定のSFTPモジュールパスで問題が発生しました。下のリンクにはアクセスできませんでした。

# override default of no subsystems 
Subsystem sftp /usr/libexec/openssh/sftp-server 
関連する問題