Это ошибка в Apache Commons VFS . Похоже, что это будет исправлено в commons-vfs 2.7.0, который еще не был выпущен, когда я пишу это.
Commons-vfs пытается получить числовой идентификатор пользователя c, который удаленный SFTP сеанс запущен, запустив команду "id -u" на удаленном сервере. До 2.7 logi c ожидает, что эта команда либо вернет ненулевой код выхода, указывающий на сбой, либо выведет число и завершит работу с кодом 0. Судя по полученной ошибке, ваш SFTP-сервер выводит строка «id -u» вместо числа.
Вы можете попробовать воспроизвести поведение в интерактивном режиме, набрав:
ssh user@host 'id -u'
и посмотреть, какой вывод вы можете получить.
Похоже, что commons-vfs 2.7.0 (после его выпуска) будет корректно обрабатывать случай, когда id -u не возвращает число. Он также будет иметь возможность отключить выполнение этой команды или обнаружение удаленного UID в первую очередь.
Тем временем вы можете рассмотреть возможность создания своей собственной копии commons-vfs из source, Или посмотрите, как SFTP-сервер реагирует по-другому, когда клиент пытается выполнить команду "id -u".