从Spring项目中从Gitlab读取属性文件

时间:2019-03-15 11:56:08

标签: java spring ssl gitlab

这肯定是一个非常愚蠢的问题,但是我正在尝试从gitlab存储库中读取非常基本的信息(我的仓库是私有的,因此我无法向您显示确切的URL)。 我执行以下代码: (我只是在此示例中在公共存储库(https://github.com/ProgramDisciple/cube中发布了该文件的示例,但在我的情况下,该文件必须为PRIVATE,实际URL类似于(https://gitlab.com/ProgramDisciple/gitcube),但我可以不能在这里发布,对不起)

GitlabAPI gitLabApi=GitlabAPI.connect("https://gitlab.com/ProgramDisciple/cube", "API-Token");
String host=gitLabApi.getHost();//
            gitLabApi.getProject("cube", "prop"); //--> here comes my error 

问题是,当我尝试与GITLAB联系时,会一次又一次得到相同的错误:

javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到到请求目标的有效证书路径

我关注了以下链接: Java: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

https://jfrog.com/knowledge-base/how-to-resolve-unable-to-find-valid-certification-path-to-requested-target-error/

Resolving javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed Error?

http://rubenjgarcia.es/sslhandshakeexception-install-ssl-keystore/

http://www.elblogdeselo.com/web-services-en-java-y-axis-solucionar-javax-net-ssl-sslhandshakeexception

Connect to gitlab using Java's Gitlab API

但是他们不能解决我的问题。我一定会忘记一些很简单的事情。

我也导入了gitlab的证书,但是仍然遇到相同的问题:

./keytool -import -alias "xrepocert" -keystore "C:/Program Files/Java/jre1.8.0_181/lib/security/cacerts" -file "C:/gitlabcerts/cert/gitlab.cer"

--------------解决方案--------------------------

我的解决方法是使用配置服务器读取这些属性,我点击了此链接(https://dzone.com/articles/using-spring-config-server),以便在每次启动服务时读取属性。

0 个答案:

没有答案