【问题标题】:Jenkins SonarQube Integration FailedJenkins SonarQube 集成失败
【发布时间】:2021-03-04 19:08:01
【问题描述】:

我正在尝试将 SonarQube 与 Jenkins 集成。以下是我已经完成的步骤

  1. 安装了插件“SonarQube Scanner for Jenkins”
  2. 将 SonarQube 版本配置为 5.2 且没有任何凭据的系统
  3. 通过 Jenkins->Global Tool Configuration 启用了 SolarQuber 2.6.1 版的自动安装
  4. 在构建过程中启用了 SonarQube。

出现以下错误。不知道发生了什么。我在互联网上搜索,每个人都提到了以上四个步骤。我是否遗漏了什么,请注意端口号 9000 已启用。请帮我解决它

INFO: SonarQube Scanner 2.6.1
INFO: Java 1.8.0_45 Oracle Corporation (64-bit)
INFO: Linux 3.13.0-91-generic amd64
INFO: Error stacktraces are turned on.
INFO: User cache: /var/lib/jenkins/.sonar/cache
ERROR: SonarQube server [http://localhost:9000] can not be reached
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 0.216s
INFO: Final Memory: 3M/121M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
org.sonarsource.scanner.api.internal.ScannerException: Unable to execute SonarQube
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:84)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:71)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:71)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:67)
    at org.sonarsource.scanner.api.EmbeddedScanner.doStart(EmbeddedScanner.java:218)
    at org.sonarsource.scanner.api.EmbeddedScanner.start(EmbeddedScanner.java:156)
    at org.sonarsource.scanner.cli.Main.execute(Main.java:70)
    at org.sonarsource.scanner.cli.Main.main(Main.java:60)
Caused by: java.lang.IllegalStateException: Fail to download libraries from server
    at org.sonarsource.scanner.api.internal.Jars.downloadFiles(Jars.java:93)
    at org.sonarsource.scanner.api.internal.Jars.download(Jars.java:70)
    at org.sonarsource.scanner.api.internal.JarDownloader.download(JarDownloader.java:39)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory$1.run(IsolatedLauncherFactory.java:75)
    ... 8 more
Caused by: java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.Platform.connectSocket(Platform.java:101)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Connection.connectSocket(Connection.java:198)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Connection.connect(Connection.java:172)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Connection.connectAndSetOwner(Connection.java:358)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:117)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:329)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:246)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Call.getResponse(Call.java:276)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:234)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Call.getResponseWithInterceptorChain(Call.java:196)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.Call.execute(Call.java:79)
    at org.sonarsource.scanner.api.internal.ServerConnection.callUrl(ServerConnection.java:114)
    at org.sonarsource.scanner.api.internal.ServerConnection.downloadString(ServerConnection.java:99)
    at org.sonarsource.scanner.api.internal.Jars.downloadFiles(Jars.java:78)
    ... 11 more

【问题讨论】:

  • 您的声纳服务器正在运行吗?错误:SonarQube 服务器 [localhost:9000] 无法访问
  • 问题是你是否从 docker 运行 Jenkins(并且可能是 Sonar)。如果是,那么您应该开始使用 docker-compose 来启动两者,并为具有网桥类型的服务使用公共网络。然后您可以使用 http://sonar-service-name:9000 从 Jenkins 访问 SonarQube 服务器

标签: jenkins sonarqube


【解决方案1】:
 ERROR: SonarQube server [http://localhost:9000] can not be reached

jenkins 似乎无法访问您的服务器。这可能与端口被阻塞有关,或者您的 Sonarqube 服务器甚至在另一台主机上运行。

如果 Sonarqube-Server 在不同的主机上运行,​​您需要调整插件的设置:

【讨论】:

    猜你喜欢
    • 2019-10-24
    • 2023-01-17
    • 2018-01-08
    • 1970-01-01
    • 2016-06-29
    • 2015-08-10
    • 2018-07-18
    • 2018-08-15
    • 1970-01-01
    相关资源
    最近更新 更多