我正在尝试为eclipse下载kotlin插件。我能够连接到eclipse市场,但是当我尝试下载它时,我收到一个错误:
Unable to read repository at
https://dl.bintray.com/jetbrains/kotlin/eclipse-plugin/last/content.xml.
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
我在防火墙后面并配置了代理设置。我从这个网站下载了一个证书,并将其添加到keytool,但错误仍然相同。我如何解决此错误或手动安装此插件?
答案 0 :(得分:2)
在eclipse中设置代理设置时,您将获得三个代理条目,即配置HTTP,HTTPS和SOCKS。 在HTTP和HTTPS代理条目中配置用户名和密码,但在SOCKS中不配置。试试这个,它可能有所帮助。
还要确保您输入的用户名和密码是正确的。
配置完毕后请重新启动eclipse,这需要具备配置效果。
答案 1 :(得分:1)
从此处手动下载插件
https://dl.bintray.com/jetbrains/kotlin/eclipse-plugin/0.8.5/
(检查此处是否有最新版本)
https://dl.bintray.com/jetbrains/kotlin/eclipse-plugin
然后
答案 2 :(得分:1)
原始异常非常清楚:
sun.security.validator.ValidatorException
表示您的日食证书无法通过原始根证书进行验证-或此故事的变体。
1。将拦截证书添加到Java的证书中
使用命令行将“拦截证书”(请参阅ps)添加到java cacerts密钥库中(或使用诸如“ KeyStore Explorer”之类的GUI或Google提供的任何工具)。
2。修复eclipse.ini并在“ -vmargs”下面添加:
-Djavax.net.ssl.trustStore=cacerts
-Djavax.net.ssl.trustStorePassword=changeit
注意:请使用“证书”的完整路径,我将证书保存在eclipse文件夹中。避免使用空格且绝对不要使用引号,否则会遇到trustAnchors异常。
Eclipse应该可以工作,现在市场商店和“安装新软件”将很高兴。希望它能像我一样为您服务。祝你好运。
PS:要查找拦截证书,请打开浏览器,转到stackoverflow.com,单击https符号旁边的浏览器锁定图标,下载找到的所有证书并将其另存为文件pem / cer。将它们导入cacerts。
PS:有关命令行的更多详细信息,由于引号和空格而导致trustAnchors异常,请参见:stackoverflow和stackoverflow。
标题和答案的注释:-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4
-未解决解释的异常。它可以解决其他类型的问题。标题应为“ 由于证书验证而无法安装eclipse插件” 。对于网关,代理,防火墙和拦截ssl流量后面的公司工作站来说,这是很典型的。
答案 3 :(得分:0)
能够通过在eclipse.ini
附加以下内容来解决问题:
-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4
在此处找到上述解决方案:https://stackoverflow.com/a/33631964/4447655 如果仍然无法解决问题,还可以在eclipse代理设置中取消选中SOCKS。
答案 4 :(得分:0)
通过升级JVM(和受信任的证书?)来解决?
答案 5 :(得分:0)
您可以尝试以下解决方案:
> sudo apt-get install ca-certificates-java
> sudo update-ca-certificates -f
添加到eclipse.ini
-Dorg.eclipse.ecf.provider.filetransfer.excludeContributors=org.eclipse.ecf.provider.filetransfer.httpclient4