Eclipse уже давно установлен. Я обновил до 2018-12 несколько недель назад. У меня давно установлена ssh-аутентификация для всех моих репозиториев git (централизованно хранящихся в BitBucket Server). Работает отлично.
Сегодня мне пришлось перезагрузить свой ноутбук с Windows7 для некоторых автоматических установок, что происходит несколько раз в месяц.
Я перезапустил Eclipse и неожиданно обнаружил, что все мои репозитории git не проходят аутентификацию. Я вижу это в журнале:
!MESSAGE ssh://git@.../....git: No more authentication methods available
!STACK 0
org.eclipse.jgit.api.errors.TransportException: ssh://git@.../.....git: No more authentication methods available
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:254)
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:290)
at org.eclipse.egit.core.op.PullOperation$PullJob.run(PullOperation.java:256)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: org.eclipse.jgit.errors.TransportException: ssh://git@.../.....git: No more authentication methods available
at org.eclipse.jgit.transport.sshd.SshdSessionFactory.getSession(SshdSessionFactory.java:249)
Затем я пошел в один из моих локальных репозиториев в моей оболочке Cygwin и попробовал «git pull». Это прекрасно работало.
Единственное недавнее изменение, которое я мог внести, может быть связано с тем, что я установил версию git для Windows, в дополнение к git Cygwin. Я положил его в конце пути. Я не понимаю, как это может повлиять на это, поскольку Eclipse использует jgit.
Обновление
Я думаю, что только что решил проблему, но я не уверен, в чем была настоящая проблема.
Когда я установил 2018-12 несколько недель назад, мне показалось, что я заметил упоминание о предстоящих изменениях клиента ssh по умолчанию. Я заметил, что в настоящее время я настроен на использование JSch, и я подумал, что в примечаниях к выпуску сказано, что он перейдет на «Apache MINA», поэтому я решил изменить его сейчас и посмотреть, как он работает. Это работало нормально в течение пары недель.
Только что я попытался изменить это поле обратно на «JSch», а затем сделать тягу. Работало нормально. Просто чтобы быть уверенным, я изменил его обратно на «Apache MINA» и попробовал снова. Все еще не удалось. Изменил его обратно на "JSch", и он работает.
Я не знаю, что здесь происходит.