【问题标题】:##[error]ERROR: GC overhead limit exceeded - SonarQube in TFS Build##[错误]错误:超出 GC 开销限制 - TFS 构建中的 SonarQube
【发布时间】:2019-03-17 16:05:51
【问题描述】:

我们正在从 TFS CI 任务运行 SonarQube。

在一段时间之前,当我手动触发构建时,SonarQube 分析取得了成功,但相同的构建给出了错误,现在我的用户手动触发也无法正常工作。

[错误]错误:超出 GC 开销限制

当我们使用不同的 TFS 用户配置夜间计划构建时自动触发。

这就是我为SONAR_SCANNER_OPTS 配置系统变量的方式,它在手动触发时工作正常

我已经检查了this 文档,因为它似乎是用户权限问题。

用户权限:

并且,根据这个 TFS 用户拥有构建管理员和项目管理员的访问权限来访问我定义的变量 SONAR_SCANNER_OPTS。

【问题讨论】:

  • 在属性字段中传递 SONAR_SCANNER_OPTS 将不起作用。您必须将其定义为环境变量。

标签: tfs sonarqube azure-devops tfsbuild sonarqube-scan


【解决方案1】:

只需在 VSTS 构建中设置一个名为 SONAR_SCANNER_OPTS 的变量,其值为 -Xmx8192m,然后再试一次。

在此类似问题中查看 Dinesh 的 cmets:GC overhead limit exceeded using the VSTS task

尝试为Run Code Analysis 任务分配更多内存,而不是 Prepare analysis on SonarQube 任务。

sonar.web.javaOpts 和 sonar.ce.javaOpts 也是服务器端的 SonarQube 操作的选项。你不需要担心那些 因为您依赖 SonarCloud。设置这些以进行分析 构建将无效。只需将SONAR_SCANNER_OPTS 设置为你 在您已删除的帖子中看到的确实有效果(即将其设置为 4096 bytes 确实导致 JVM 立即失败)

【讨论】:

  • 嘿@Andy,我们有 TFS。
  • @DarshanaPatel TFS 和 VSTS 具有相同的构建系统,这也可用于本地 TFS,请尝试一下。
猜你喜欢
  • 2010-11-26
  • 1970-01-01
  • 2018-04-10
  • 2021-01-07
  • 2017-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多