##[错误]错误:超出 GC 开销限制 - TFS 构建中的 SonarQube
Posted
技术标签:
【中文标题】##[错误]错误:超出 GC 开销限制 - TFS 构建中的 SonarQube【英文标题】:##[error]ERROR: GC overhead limit exceeded - SonarQube in TFS Build 【发布时间】:2019-03-17 16:05:51 【问题描述】:我们正在从 TFS CI 任务运行 SonarQube。
在一段时间之前,当我手动触发构建时,SonarQube 分析取得了成功,但相同的构建给出了错误,现在我的用户手动触发也无法正常工作。
[错误]错误:超出 GC 开销限制
当我们使用不同的 TFS 用户配置夜间计划构建时自动触发。
这就是我为SONAR_SCANNER_OPTS
配置系统变量的方式,它在手动触发时工作正常
我已经检查了this 文档,因为它似乎是用户权限问题。
用户权限:
并且,根据这个 TFS 用户拥有构建管理员和项目管理员的访问权限来访问我定义的变量 SONAR_SCANNER_OPTS
。
【问题讨论】:
在属性字段中传递 SONAR_SCANNER_OPTS 将不起作用。您必须将其定义为环境变量。 【参考方案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,请尝试一下。以上是关于##[错误]错误:超出 GC 开销限制 - TFS 构建中的 SonarQube的主要内容,如果未能解决你的问题,请参考以下文章
布局 xml 上的 Java 堆空间错误:超出 GC 开销限制
Android Studio Google JAR 文件导致 GC 开销限制超出错误