【问题标题】:SonarQube 6.4.0.25310 with TFS out of memory exceptionSonarQube 6.4.0.25310 与 TFS 内存不足异常
【发布时间】:2017-07-24 23:05:51
【问题描述】:

我使用最新的 SonarBuild 服务器和 SonarQube TFS 扩展 (不是运行器 .bat)来构建我们的 .net 应用程序,

构建在构建代理上运行,并且在某些项目中,我遇到了 OutOfMemoryError 异常:我已经阅读了一些关于它的线程,人们在其中写了一些关于增加或设置堆内存的内容Java 运行时,但我不明白该怎么做,我必须在其中粘贴选项等。我几乎没有使用 java 的经验。

[error]Exception in thread "Report about progress of Javascript analyzer" Exception in thread "CHECKPOINT_WRITER" Exception in thread "CLEANUP_MANAGER" java.lang.OutOfMemoryError: GC overhead limit exceeded
[error]at java.util.Arrays.copyOfRange(Unknown Source)
[error]at java.lang.String.<init>(Unknown Source)
[error]at java.lang.StringBuilder.toString(Unknown Source)
[error]at org.sonar.squidbridge.ProgressReport.run(ProgressReport.java:64)
[error]at java.lang.Thread.run(Unknown Source)
[error]java.lang.OutOfMemoryError: GC overhead limit exceeded
[error]at com.persistit.Persistit.closeZombieTransactions(Persistit.java:1706)
[error]at com.persistit.Persistit.cleanup(Persistit.java:1529)
[error]at com.persistit.CleanupManager.poll(CleanupManager.java:157)
[error]at com.persistit.CleanupManager.runTask(CleanupManager.java:88)
[error]at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:144)
[error]at java.lang.Thread.run(Unknown Source)

【问题讨论】:

  • 上次我将 sonar.web.javaOpts=-Xmx1280m 添加到 sonar.config 文件中,但没有帮助。

标签: sonarqube tfs-2015 sonarqube-scan


【解决方案1】:

错误发生在扫描仪端。您可以尝试通过在结束步骤之前设置环境变量SONAR_SCANNER_OPTS=-Xmx1500m 来增加扫描仪的内存。但是错误可能来自对可能不是您的代码而是某个第三方库的大型 JavaScript 文件的分析,这可以通过从分析中排除这些文件来解决(使用扫描仪端的 sonar.exclusions 属性,直接在服务器用户界面)。

【讨论】:

  • 你能告诉我,我怎样才能排除使用 sonarqube tfs 扩展的库?
  • 好的,我成功了,现在可以运行了。
猜你喜欢
  • 1970-01-01
  • 2010-10-05
  • 1970-01-01
相关资源
最近更新 更多