SonarQube - 无法连接到没有代理的更新中心

Posted

技术标签:

【中文标题】SonarQube - 无法连接到没有代理的更新中心【英文标题】:SonarQube - Fail to connect to update center with no proxy 【发布时间】:2017-03-26 07:42:10 【问题描述】:

我安装了 SonarQube 5.6.3,当我进入更新中心时,我只能看到“已安装”插件。但其他选项卡不显示任何内容(显示为 0)。 我没有使用代理。日志显示如下:

ERROR web[o.s.s.p.UpdateCenterClient] Fail to connect to update center
org.sonar.api.utils.SonarException: Fail to download: https://update.sonarsource.org/update-center.properties (no proxy)
    at org.sonar.core.util.DefaultHttpDownloader.failToDownload(DefaultHttpDownloader.java:157) ~[sonar-core-5.6.3.jar:na]

我尝试使用 wget 手动下载文件 https://update.sonarsource.org/update-center.properties,效果很好。

为什么不能从 UpdateCenter 工作?我需要在 sonar.properties 文件中指定任何内容吗? sonar.properties 中与更新中心相关的唯一一行是:sonar.updatecenter.activate=true

【问题讨论】:

您安装了 SonarQube 的计算机/服务器是否可以访问互联网? wget 命令是否正在处理这个实例? 能否也发送完整的日志? @Eric,是的,服务器可以访问 Internet,手动下载文件 update-center.properties 时 wget 工作正常 @Simon,当然。如何在此处附加文件?抱歉问,但这是我第一次参与***,我对选项不熟悉。我认为我不应该从日志中粘贴长输出。还是我应该? :) 您可以将日志粘贴到 gist.github.com 并提供链接。 【参考方案1】:

在您尝试此处提供的任何选项之前,请检查与 sonarqube 机器的 Internet 连接并再次检查(刷新)ALM 配置。

【讨论】:

【参考方案2】:

确保您在 sonar.properties 中设置了 http 和 https 代理配置:

http.proxyHost=<host>
http.proxyPort=<port>
http.proxyUser=<username>
http.proxyPassword=<password>    
https.proxyHost=<host>
https.proxyPort=<port>
https.proxyUser=<username>
https.proxyPassword=<password>

【讨论】:

【参考方案3】:

我听从了 Eric 的建议,从 Oracle 而不是 IBM 安装了 Java。在此之前,我尝试将 -Dcom.ibm.jsse2.overrideDefaultTLS=true 添加到 java 选项,但没有任何改变。一旦我更改为 Oracle JRE,更新中心就开始按预期工作。

非常感谢您的帮助

【讨论】:

【参考方案4】:

您使用的 IBM JDK 的行为与具有 TLS 连接的 Oracle JDK 不同。如果不将 com.ibm.jsse2.overrideDefaultTLS 设置为 true,应用程序将无法连接到使用 TLS 1.2 (http://www.ibm.com/support/knowledgecenter/en/SSYKE2_8.0.0/com.ibm.java.security.component.80.doc/security-component/jsse2Docs/matchsslcontext_tls.html#matchsslcontext_tls) 的更新中心

-Dcom.ibm.jsse2.overrideDefaultTLS=true 添加到 conf/sonar.properties 中的 sonar.web.javaOpts 将解决您的问题。

我强烈建议将此属性 (-Dcom.ibm.jsse2.overrideDefaultTLS=true) 添加到 sonar.web.javaOpts、sonar.ce.javaOpts 和 sonar.search.javaOpts

干杯,

【讨论】:

以上是关于SonarQube - 无法连接到没有代理的更新中心的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 Postgresql 将 JDBC 连接到 sonarqube

SonarQube 无法使用 REST API 连接到 JIRA 7

连接到 PostgresQL 时,Sonarqube 不会加载其页面而没有任何错误消息

Jenkins 无法使用带有自签名证书的 HTTPS (HTTP + SSL) 连接到 SonarQube 服务器

无法连接到 dante socks 5 代理服务器

代理商背后的Jenkins SonarQube扫描仪