Я хочу контролировать состояние моего канала, но он сохраняет печать -1. Я использовал его в коде, и он работает отлично. Он успешно передает файлы. Он должен возвращать 0, но он продолжает возвращать -1. Любая идея почему?Почему я получаю -1 как статус выхода ChannelSftp все время?
channelSftp = (ChannelSftp) session.openChannel("sftp");
this.timeout = session.getTimeout();
System.out.println(channelSftp.getExitStatus());
channelSftp.connect();
System.out.println(channelSftp.getExitStatus());
channelSftp.cd(path);
System.out.println(channelSftp.getExitStatus());
is = channelSftp.get(filename);
System.out.println(channelSftp.getExitStatus());
Я попытался закрыть его, но все равно статус выхода -1 –
Используя '.close'? Он отправляет запрос на закрытие канала на сервер. Статус выхода заполняется только после ответа сервера. Если вы вызываете '.getExitStatus' сразу после вызова' .close', он еще не будет заполнен. Во всяком случае, что вы пытаетесь сделать? –
Я разрабатываю приложение, которое включает sftp с помощью jsch и для целей отладки и ведения журнала, мне нужны коды выхода. Я получил коды выхода для канала exec и даже настроил некоторые. И да, я использовал. –