赞
踩
配置springcloud配置中心读取github上的配置文件报错:com.jcraft.jsch.JSchException: Auth fail
org.eclipse.jgit.api.errors.TransportException: https://username@gitee.com/project.git: Auth fail at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:254) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:306) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:200) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.cloneToBasedir(JGitEnvironmentRepository.java:574) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3] at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.copyRepository(JGitEnvironmentRepository.java:549) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3] at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.createGitClient(JGitEnvironmentRepository.java:532) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3] at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.refresh(JGitEnvironmentRepository.java:261) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3] 。。。......... 。。。......... 。。。......... at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688) [na:1.8.0_201] at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_201] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687) [na:1.8.0_201] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_201] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_201] at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_201] Caused by: org.eclipse.jgit.errors.TransportException: ssh://username@gitee.com/projec.gitt: Auth fail at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:192) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:140) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:280) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:170) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:137) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:123) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1271) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:243) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] ... 47 common frames omitted Caused by: com.jcraft.jsch.JSchException: Auth fail at com.jcraft.jsch.Session.connect(Session.java:519) ~[jsch-0.1.54.jar:na] at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:146) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r] ... 54 common frames omitted
起初我用git Bash 窗格去clone项目提示我
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我用 $ ssh-keygen -t rsa -C “填写自己的邮箱”,生成密钥并配置到github的密钥中 ,解决我本地连接git失败的问题
$ ssh-keygen -t rsa -C “填写自己的邮箱”
详见以下两篇博客
https://blog.csdn.net/qq_45242696/article/details/97259563
https://blog.csdn.net/qq_43768946/article/details/90411154
本以为可以解决springcloud配置中心读取github上的配置文件报错 的问题,但是还是老样子,
就又去查阅了资料发现:
从2020年几月份开始,github上的master分支变为了mian分支。因此yml中读取分支的配置应该是:***label: main***
原配置文件:
修改为 main:
注意:yml中的 label改了,那么访问的地址也需要改 localhost:xxx/main/config-dev.yml
注: 用https做 uri的请求访问成功 ,
https结果:
本着好事成双的原则,就寻思这都改好了那 uri 不都是一样的也就是换了个形式,就改成ssh的去试了一下,结果试试就逝世~~~~ 喵了个咪 ~
emo~
,一夜回到解放前
org.eclipse.jgit.api.errors.TransportException: ssh://username@gitee.com/project.git: Auth fail
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:254) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]
at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:306) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]
at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:200) ~[org.eclipse.jgit-5.1.3.201810200350-r.jar:5.1.3.201810200350-r]
at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.cloneToBasedir(JGitEnvironmentRepository.java:574) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3]
at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.copyRepository(JGitEnvironmentRepository.java:549) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3]
at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.createGitClient(JGitEnvironmentRepository.java:532) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3]
at org.springframework.cloud.config.server.environment.JGitEnvironmentRepository.refresh(JGitEnvironmentRepository.java:261) [spring-cloud-config-server-2.1.0.RC3.jar:2.1.0.RC3]
。。。.........
。。。.........
。。。.........
想着可能是密钥生成的有问题??
Auth fail
,认证失败。我们生成ssh公钥时,使用的命令为
ssh-keygen -t rsa -C "xx@xx.com"
生成的私钥为: OPENSSH PRIVATE KEY Spring Cloud config组件可能不支持这种格式的私钥验证连接
用另一种命令生成其他格式的密钥:
ssh-keygen -m PEM -t rsa -b 4096 -C "xx@xx.com"
生成的私钥为:RSA PRIVATE KEY
重新在gitHub上设置公钥,问题解决。
参考文章:https://blog.csdn.net/keyue0459/article/details/105042063
希望本文可以帮助各位朋友剥开迷雾,走向光明,为您节省宝贵的时间,也感谢文中其他博客带我给我启发,祝各位前程似锦。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。