Hi experts,
I use the following code snippet to clone a remote git repository to local. My JGit version 4.0.1.201506240215-r and JSCH version 0.1.53.
Git git = Git.cloneRepository()
.setURI("ssh://git@HOST/GROUP/REPO.git")
.setRemote("origin")
.setDirectory(new File("PATH_TO_LOCAL_REPO")).call();
The code snippet worked fine on Windows and Linux platform. But failed on IBM OS/390 arch system.
The OS/390 arch system has the default encoding EBCDIC(1047), I have already converted the .ssh/known_hosts, .ssh/id_rsa, .ssh/id_rsa.pub on the OS/390 system from 1047 to UTF8, but still got the error.
Anyone can give me suggestion or idea where is the root cause?
Exception in thread "main" org.eclipse.jgit.api.errors.TransportException: ssh://git@HOST/GROUP/REPO.git: Auth fail
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:139)
at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:193)
at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:133)
at com.ibm.isvt.blame.monitor.JGitClient.main(JGitClient.java:295)
Caused by: org.eclipse.jgit.errors.TransportException: ssh://git@HOST/GROUP/REPO.git: Auth fail
at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:159)
at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:136)
at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:262)
at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:161)
at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:136)
at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:122)
at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1138)
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:130)
... 3 more
Caused by: com.jcraft.jsch.JSchException: Auth fail
at com.jcraft.jsch.Session.connect(Session.java:512)
at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116)
... 10 more