SonarQube Build Breaker 插件:报告处理未成功完成:失败

joy*_*779 5 sonar-runner sonarqube sonarqube-web sonarqube-scan

我正在尝试使用 gulp 任务将伊斯坦布尔生成的报告上传到声纳仪表板,但失败并出现以下错误。看起来SonarQube 中的Build Breaker插件在将报告上传到 Sonar 之前超时。有什么办法可以调整这个插件吗?

我正在使用声纳 5.3。

15:42:43.411 INFO: Analysis report generated in /workspace/{project}/.sonar/report
15:42:43.430 INFO: ------------------------------------------------------------------------
15:42:43.430 INFO: EXECUTION FAILURE
15:42:43.430 INFO: ------------------------------------------------------------------------
15:42:43.430 INFO: Total time: 5:06.287s
15:42:43.609 INFO: Final Memory: 57M/2603M
15:42:43.609 INFO: ------------------------------------------------------------------------
15:42:43.609 ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: Report processing did not complete successfully: FAILED
      at org.sonar.plugins.buildbreaker.QualityGateBreaker.getAnalysisId(QualityGateBreaker.java:152)
      at org.sonar.plugins.buildbreaker.QualityGateBreaker.execute(QualityGateBreaker.java:108)
      at org.sonar.plugins.buildbreaker.QualityGateBreaker.executeOn(QualityGateBreaker.java:95)
      at org.sonar.batch.phases.PostJobsExecutor.execute(PostJobsExecutor.java:65)
      at org.sonar.batch.phases.PostJobsExecutor.execute(PostJobsExecutor.java:55)
Run Code Online (Sandbox Code Playgroud)

aga*_*rys 4

这是一个已知的无效问题:#14(问题发生在服务器端,而不是在Build Breaker机制/逻辑中)。

马修·德图利奥评论:

这是因为您的项目的服务器端后台任务失败。您需要检查那里的日志并首先解决该问题。报告处理步骤是 SQ 计算质量门状态的时候。该插件只是检查那里计算的状态,因此如果处理失败,该插件会将分析标记为失败。

在我的公司我们在服务器端发现:

java.lang.OutOfMemoryError: GC overhead limit exceeded
Run Code Online (Sandbox Code Playgroud)

  • 对我来说,问题是由于多模块 Maven 项目造成的。多模块项目下的各个模块都在声纳上提供了报告。因此,当多模块项目尝试发布报告时发生了冲突。我删除了所有单独的模块报告,一切顺利。 (2认同)