从Jenkins插件执行SonarQube扫描程序时出错

时间:2017-03-31 19:16:23

标签: jenkins sonarqube

当我尝试将SonarQube Scanner作为Jenkins构建的一部分执行时,我收到以下错误:

ERROR: SonarQube server [http://<hostname>:9000] can not be reached

INFO: ------------------------------------------------------------------------

INFO: EXECUTION FAILURE

INFO: ------------------------------------------------------------------------

INFO: Total time: 0.242s

INFO: Final Memory: 5M/483M

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 
... 8 more

Caused by: java.lang.IllegalStateException: Status returned by
 url [http://<hostname>:9000/batch/index] is not valid: [404]

at org.sonarsource.scanner.api.internal.ServerConnection.callUrl(ServerConnection.java:115)

at org.sonarsource.scanner.api.internal.Jars.getBootstrapIndex(Jars.java:96)

... 12 more

ERROR: 

我可以从我的Jenkins主机访问以下URL:http://:9000 / sonar /。当我尝试执行此操作时:

wget http://<hostname>:9000/batch/index

我得到了相同的404 http错误。我不知道这个URL后缀 / batch / index 来自哪里。网络搜索没有给出任何线索。

我的声纳版本是6.0。我的Jenkins Sonar Scanner插件版本是2.6.1。

使用JVM:

java版“1.8.0_121” Java(TM)SE运行时环境(版本1.8.0_121-b13) Java HotSpot(TM)64位服务器VM(版本25.121-b13,混合模式)

1 个答案:

答案 0 :(得分:2)

声纳服务器上声纳网络环境(sonar.web.context)的设置是什么?它将在sonar.properties内。默认情况下,Jenkins插件和声纳服务器配置都将其设置为root:

'http://<hostname>:9000/'

我要做的第一件事是确保它们在声纳配置和jenkins插件配置中匹配。

我见过教程,告诉你使用/sonar或类似的东西。在这种情况下,jenkins插件也需要设置为/sonar,例如:

'http://<hostname>:9000/sonar'