Netbeans 7.3: Ошибка подключения к Git-репозиторию с SSH
Я пытаюсь подключиться к репозиторию git на удаленном сервере, чтобы я мог редактировать исходный код в Netbeans 7.3, но когда я пытаюсь подключиться к репозиторию с помощью своего личного ключа ssh для клонирования репозитория, я получаю эту ошибку: java.lang.ArrayIndexOutOfBoundsException: 779
Журнал:
INFO [org.netbeans.modules.git]:
(address removed):
java.lang.ArrayIndexOutOfBoundsException: 779
java.lang.ArrayIndexOutOfBoundsException: 779
at com.jcraft.jsch.Util.fromBase64(Util.java:50)
at com.jcraft.jsch.KnownHosts.setKnownHosts(KnownHosts.java:157)
Caused: com.jcraft.jsch.JSchException
at com.jcraft.jsch.KnownHosts.setKnownHosts(KnownHosts.java:171)
at com.jcraft.jsch.JSch.setKnownHosts(JSch.java:184)
at org.eclipse.jgit.transport.JschConfigSessionFactory.knownHosts(JschConfigSessionFactory.java:261)
at org.eclipse.jgit.transport.JschConfigSessionFactory.createDefaultJSch(JschConfigSessionFactory.java:248)
at org.netbeans.libs.git.jgit.JGitSshSessionFactory.getJSch(JGitSshSessionFactory.java:122)
at org.netbeans.libs.git.jgit.JGitSshSessionFactory.getSession(JGitSshSessionFactory.java:105)
Caused: org.eclipse.jgit.errors.TransportException: (address removed): java.lang.ArrayIndexOutOfBoundsException: 779
at org.netbeans.libs.git.jgit.JGitSshSessionFactory.getSession(JGitSshSessionFactory.java:111)
at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:121)
at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:248)
at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:147)
at org.netbeans.libs.git.jgit.commands.ListRemoteObjectsCommand.runTransportCommand(ListRemoteObjectsCommand.java:74)
Caused: org.netbeans.libs.git.GitException$AuthorizationException: (address removed): java.lang.ArrayIndexOutOfBoundsException: 779
at org.netbeans.libs.git.jgit.commands.TransportCommand.handleException(TransportCommand.java:198)
at org.netbeans.libs.git.jgit.commands.ListRemoteObjectsCommand.runTransportCommand(ListRemoteObjectsCommand.java:87)
at org.netbeans.libs.git.jgit.commands.TransportCommand.run(TransportCommand.java:137)
at org.netbeans.libs.git.jgit.commands.GitCommand.execute(GitCommand.java:73)
at org.netbeans.libs.git.GitClient.listRemoteBranches(GitClient.java:655)
at org.netbeans.modules.git.client.GitClient$31.call(GitClient.java:533)
at org.netbeans.modules.git.client.GitClient$31.call(GitClient.java:529)
at org.openide.util.NetworkSettings.suppressAuthenticationDialog(NetworkSettings.java:140)
at org.netbeans.modules.git.client.GitClient$CommandInvoker$1$1.call(GitClient.java:790)
at org.netbeans.modules.git.client.GitClient$CommandInvoker$1.call(GitClient.java:815)
at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethodIntern(GitClient.java:823)
at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethod(GitClient.java:756)
at org.netbeans.modules.git.client.GitClient$CommandInvoker.runMethod(GitClient.java:734)
at org.netbeans.modules.git.client.GitClient$CommandInvoker.access$400(GitClient.java:728)
at org.netbeans.modules.git.client.GitClient.listRemoteBranches(GitClient.java:529)
[catch] at org.netbeans.modules.git.ui.clone.RepositoryStep$RepositoryStepProgressSupport.perform(RepositoryStep.java:197)
at org.netbeans.modules.git.client.GitProgressSupport.performIntern(GitProgressSupport.java:102)
at org.netbeans.modules.git.client.GitProgressSupport.run(GitProgressSupport.java:95)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1432)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2044)
Любые идеи, как это исправить?
1 ответ
Решение
Все потоки, включая ошибки такого рода, указывают на одно и то же решение.
Например, смотрите " Ошибка ArrayIndexOutOfBoundsException при установке инструмента управления платформой IBM Intelligent Operations Center ".
Caused by: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 810
at com.jcraft.jsch.Util.fromBase64(Util.java:48)
at com.jcraft.jsch.KnownHosts.setKnownHosts(KnownHosts.java:157)
причина
Хранилище ключей ssh на сервере установки не синхронизировано со средой.
Решение проблемы
Чтобы исправить проблему, сделайте следующее:
- Войдите на сервер установки как пользователь root.
- Удалить
/root/.ssh/known_hosts
файл.- С использованием
ssh
команда, доступ к четырем целевым серверам (приложение, событие, данные и управление) от имени пользователя root, используя полное имя хоста каждого сервера. Примите ключ ssh при появлении запроса.
Такое же решение, как в " com.jcraft.jsch.JSchException: UnknownHostKey
".