2016-03-29 16 views
0

Uzak bir sunucudan dosya indirmek için scala-ssh 0.7.0 kullanıyorum.Scala-ssh ile bir dosya indirdikten sonra uygulama çıkmıyor

İndirmenin kendisi başarılı görünüyor (İndirilen dosyayı bulabilirim).

16: 14: net.schmizz.sshj.xfer.LoggingTransferListener 43,824 [ana] İZ - log-file.txt 16% 100 transfer : Burada günlük çıktı son parçası 14: 43,824 [main] INFO net.schmizz.sshj.common.StreamCopier - 44.82421875 KiB, içinde aktarıldı 1.572 saniye (28.514134064885496 KiB/s) 16: 14: 43.825 [main] DEBUG net.schmizz.sshj.xfer.scp.SCPEngine - - Uzaktan işlem yapılmasını kabul eder. 16: 14: 43.826 [main] DEBUG net.schmizz.sshj.xfer.scp.SCPEngine - Sinyal gönderimi: Transfer işlemi 16: 14: 43.826 [main] TRACE net.schmizz.sshj.transport.Encoder - Kodlama paketi # 10: 5e 00 00 00 00 00 00 00 01 00 16: 14: 43.826 [main] DEBUG net.schmizz.sshj.connection.channel.Window $ Uzak - 1 tarafından 2097148'e kadar 16: 14: 44.220 [okuyucu] TRACE net.schmizz.sshj.transport.Decoder - Alınan paket # 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 00 16: 14: 44.221 [okuyucu] TRACE net.schmizz.sshj.transport.TransportImpl - Alınan paket CHANNEL_REQUEST 16: 14: 44.221 [reader] DEBUG net.schmizz .sshj.connection.channel.direct.SessionChannel - exit-status için talebi var 16: 14: 44.222 [okuyucu] TRACE net.schmizz.sshj.transport.Decoder - Al d paketi # 15: 60 00 00 00 00 16 : 14: 44,222 [okuyucu] İZ net.schmizz.sshj.transport.TransportImpl - paket CHANNEL_EOF 16 Alınan: 14: 44,222 [okuyucu] DEBUG net.schmizz. sshj.connection.channel.direct.SessionChannel - EOF var 16: 14: 44.223 [okuyucu] TRACE net.schmizz.sshj.transport.Decoder - Alınan paket # 16: 61 00 00 00 00 16: 14: 44.223 [okuyucu] İZ net.schmizz.sshj.transport.TransportImpl - alınan paket CHANNEL_CLOSE 16: 14: 44,223 [ana] DEBUG net.schmizz.sshj.connection.channel.direct.SessionChannel - yakın 16 gönderme: 14: 44.223 [reader] DEBUG net.schmizz.sshj.connection.channel.direct.SessionChannel - Yakındavar16: 14: 44.224 [main] TRACE net.schmizz.sshj.transport.Encoder - Kodlama paketi # 11: 61 00 00 00 00 16: 14: 44.225 [main] DEBUG net.schmizz.concurrent.Promise - - <> 16 bekleniyor: -: 14: 44,225 [okuyucu] DEBUG net.schmizz.concurrent.Promise: 14 session kanal unutulması (# 0) 16 44,225 [okuyucu] DEBUG net.schmizz.sshj.connection.ConnectionImpl - <>

SOME My kodu ayarlama çok basit:

import com.decodified.scalassh._ 

val sshClient = new SshClient(new HostConfig(login = PasswordLogin(userName, SimplePasswordProducer(password)), hostName)) 


sshClient.download(filePath, targetDirectory) 

Şimdi, indirme işlemi başarıyla tamamlansa ve indirme komutundan sonra uygulama yürütme devam ediyorsa, uygulamanın kendisi çıkmıyor.

Herhangi bir fikrin var mı?

+0

https://github.com/sirthias/scala-ssh/pull/27 ile ilişkili olabilir mi? – pedrofurla

+0

Teşekkür ederim @pedrofurla. Bağlantılı gibi görünüyor - RichSshClient'e dolaylı dönüşümü engellerken sorun ortadan kalkar. –

cevap

0

RichSshClient'e örtük dönüştürme bunun arkasında gibi görünüyor. SshClient'i ScpTransferable ile genişleten 'SshClientEnhanced' adlı yeni bir sınıf oluşturarak RichSshClient'e örtük dönüştürmeyi engelledim. SshClientEnhanced örneğinde indirme yöntemini çağırmak iyi çalışıyor.