scala-ssh 0.7.0を使用してリモートサーバからファイルをダウンロードしています。scala-sshでファイルをダウンロードした後にアプリケーションが終了しない
ダウンロード自体は成功したようです(ダウンロードしたファイルが見つかります)。
16:14: net.schmizz.sshj.xfer.LoggingTransferListener 43.824 [メイン] TRACE -
log-file.txt
16の100%転写:ここで、ログ出力の最後の部分である14:43.824 [メイン] INFO net.schmizz.sshj.common.StreamCopier - 44.82421875 KiBは で転送されます。1.572秒(28.514134064885496KiB/s)16:14:43.825 [メイン] DEBUG net.schmizz.sshj.xfer.scp.SCPEngine - - リモート承諾転送完了 16:14:43.826 [main] DEBUG net.schmizz.sshj.xfer.scp.SCPEngine - シグナル伝達:転送完了16:14:43.826 [メイン] TRACE net.schmizz.sshj.transport.Encoder - エンコードパケット#10:5e 00 00 00 00 00 00 00 01 00 16:14:43.826 [main] DEBUG net.schmizz.sshj.connection.channel.Window $リモート - 消費1 まで2097148 16:14:44.220 [読者] TRACE net.schmizz.sshj.transport.Decoder - 受信パケット#14:62 00 00 00 00 00 00 00 0b 65 78 69 74 2d 73 74 61 74 75 73 00 00 00 00 16:14:44.221 [読者] TRACE net.schmizz.sshj.transport.TransportImpl - 受信パケットCHANNEL_REQUEST 16:14:44.221 [読者] DEBUG net.schmizz .sshj.connection.channel.direct.SessionChannel - チャンネルが見つかりました リクエストexit-status
16:14:44.222 [読者] TRACE net.schmizz.sshj.transport.Decoder - 受信dパケット#15:60 00 00 00 00 16:14:44.222 [読者] TRACE net.schmizz.sshj.transport.TransportImpl - 受信パケット CHANNEL_EOF 16:14:44.222 [読者] DEBUG net.schmizz。 sshj.connection.channel.direct.SessionChannel - GOF EOF 16:14:44.223 [読者] TRACE net.schmizz.sshj.transport.Decoder - 受信パケット#16:61 00 00 00 00 16:14:44.223 [読者] TRACE net.schmizz.sshj.transport.TransportImpl - 受信パケット CHANNEL_CLOSE 16:14:44.223 [メイン] DEBUG net.schmizz.sshj.connection.channel.direct.SessionChannel - 送信 閉じる16: 14:44.223 [読者] DEBUG net.schmizz.sshj.connection.channel.direct.SessionChannel - 終了しました[メイン] TRACE net.schmizz.sshj.transport.Encoder - エンコードパケット#11:61 00 00 00 00 16:14:44.225 [メイン] DEBUG net.schmizz.concurrent.Promise - - > 待ち:14:44.225 [リーダー] DEBUG net.schmizz.sshj.connection.ConnectionImpl -session
チャネル(#0) 16忘れる:14:44.225 [リーダー] DEBUG net.schmizz.concurrent.Promiseを - <>
SOME
に私のコードを設定することは非常に簡単です:
import com.decodified.scalassh._
val sshClient = new SshClient(new HostConfig(login = PasswordLogin(userName, SimplePasswordProducer(password)), hostName))
sshClient.download(filePath, targetDirectory)
ダウンロードが正常に終了し、ダウンロードコマンドの後にアプリケーションの実行が続行されても、アプリケーション自体は終了しません。
アイデア?
https://github.com/sirthias/scala-ssh/pull/27に関連する可能性がありますか? – pedrofurla
ありがとうございます@pedrofurla。リンクされているようです - RichSshClientへの暗黙的な変換を避けると、問題はなくなります。 –