Я использую JSCH для загрузки файлов с SFTP -сервера.
Я использую отдельный сеанс, с несколькими каналами для загрузки файлов из разных папок, расположенных в SFTP.
для этого процесса загрузки у меня есть набор запланированных заданий. Каждое задание будет: < /p>
[*] Откройте новый канал (ChannelSftp) каждый раз. Имя канала: sftp
[*] Использование методов channelsftp.ls () , чтобы получить размер общего числа файлов для загрузки
Если размер (вектор) больше нуля, а затем использует все файлы. канал. Что может быть причиной. Как решить эту проблему < /p>
ниже приведен код, который я использую: < /p>
ChannelSftp channelSftp = null;
try {
channelSftp = getChannelConnectionUtil().openChannel(); //SFTPConnection.getSession().openChannel("sftp");
@SuppressWarnings("rawtypes")
Vector numOfFiles = channelSftp.ls(ftpDir+"/*.*");
if(numOfFiles.size() > 0){
channelSftp.get(ftpDir+"/*.*",localDir); // Here I am getting error
}
} catch (Exception e) {
e.printStackTrace();
} finally {
getChannelConnectionUtil().disconnectChannel(channelSftp);
}
Подробнее здесь: https://stackoverflow.com/questions/171 ... using-jsch