Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
由于SunCertPathBuilderException:找不到证书,无法连接到Eclipse中的GitHub_Eclipse_Git_Ssl_Github - Fatal编程技术网

由于SunCertPathBuilderException:找不到证书,无法连接到Eclipse中的GitHub

由于SunCertPathBuilderException:找不到证书,无法连接到Eclipse中的GitHub,eclipse,git,ssl,github,Eclipse,Git,Ssl,Github,我已经用EclipseEeLuna安装了我的mac,所有这些看起来都很好(来自Windows) 我安装了EGit和Github(Mylin)插件 然而,我似乎无法在Eclipse中克隆github项目。 当通过EGit(不是gitHub插件)使用eclipse导入并填写Https-uri(任何开源gitHub项目的)时,EGit抱怨它无法连接,并显示一个项目符号列表,列出可能的原因,如uri不正确等 当使用Eclipse Github插件导入Github项目并让插件搜索时,我得到了著名的可信认证

我已经用EclipseEeLuna安装了我的mac,所有这些看起来都很好(来自Windows)

我安装了EGit和Github(Mylin)插件

然而,我似乎无法在Eclipse中克隆github项目。 当通过EGit(不是gitHub插件)使用eclipse导入并填写Https-uri(任何开源gitHub项目的)时,EGit抱怨它无法连接,并显示一个项目符号列表,列出可能的原因,如uri不正确等

当使用Eclipse Github插件导入Github项目并让插件搜索时,我得到了著名的可信认证错误:

Error searching repositories: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
奇怪。。。我有一个默认的Java8安装。 我甚至在sdk/jre/lib中的jssecert文件中添加了github-pub-cert,但没有效果。 我没有启用代理,无论是在Eclipse还是系统中

我可以通过git命令“git clone[https repo uri]”克隆repo

如何解决这个问题

这应该是一个评论,但出于某些愚蠢的原因,我需要有一个 发表评论的声誉

这里也有同样的问题

我的git服务器有一个自签名证书

证书名(CN)与我用来连接它的主机名同名

我已将配置属性“http.sslVerify=false”放在.gitconfig中

当我尝试克隆(使用https)时,Eclipse连接到存储库,获取存储库信息,显示“主”分支,开始克隆(它显示进度条),接收对象,但在最后抛出异常(下面的异常),并且没有克隆存储库(见下面的图片)

这里可能有一个bug,因为它可以读取存储库以获取其信息和文件,但无法完成整个过程

环境:

eclipse.buildId=4.5.0.I20150320-0800
java.version=1.8.0_25
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=pt_BR
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product
例外情况:

org.eclipse.core.runtime.CoreException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at org.eclipse.egit.core.op.ConfigureGerritAfterCloneTask.execute(ConfigureGerritAfterCloneTask.java:89)
    at org.eclipse.egit.core.op.CloneOperation.run(CloneOperation.java:161)
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard.executeCloneOperation(AbstractGitCloneWizard.java:442)
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard.access$2(AbstractGitCloneWizard.java:435)
    at org.eclipse.egit.ui.internal.clone.AbstractGitCloneWizard$5.run(AbstractGitCloneWizard.java:396)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1917)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:301)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:295)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1471)
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:212)
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:936)
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:871)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1043)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1343)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1371)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1355)
    at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:563)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1511)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1439)
    at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
    at org.eclipse.egit.core.op.ConfigureGerritAfterCloneTask.isGerrit(ConfigureGerritAfterCloneTask.java:138)
    at org.eclipse.egit.core.op.ConfigureGerritAfterCloneTask.execute(ConfigureGerritAfterCloneTask.java:83)
    ... 5 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387)
    at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
    at sun.security.validator.Validator.validate(Validator.java:260)
    at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324)
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229)
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1453)
    ... 20 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:145)
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:131)
    at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382)
    ... 26 more
尝试更新您的JDK。 我使用jdk1.8.0_121。只需在.gitconfig中设置配置属性http.sslVerify=false就足够了

最好的