【问题标题】:SonarQube - Java Heap ErrorSonarQube - Java 堆错误
【发布时间】:2017-01-17 00:01:09
【问题描述】:

我有几个模块不包含 Maven 多模块项目中的源代码。当 SonarQube 分析这些模块时,它会暂停并发出以下警告:

Load module settings
00:40:47.304 [WARN] [09:29:52.769] [JOURNAL_FLUSHER] WARNING Journal flush operation took 2,123ms last 8 cycles average is 265ms
00:41:54.102 [WARN] [09:31:02.653] [JOURNAL_FLUSHER] WARNING Journal flush operation took 5,194ms last 8 cycles average is 649ms
00:42:37.907 [WARN] [09:31:48.387] [JOURNAL_FLUSHER] WARNING Journal flush operation took 3,927ms last 8 cycles average is 616ms
00:44:41.930 [WARN] [09:33:55.362] [JOURNAL_FLUSHER] WARNING Journal flush operation took 6,855ms last 8 cycles average is 856ms
00:45:48.276 [WARN] [09:34:51.298] [JOURNAL_FLUSHER] WARNING Journal flush operation took 3,144ms last 8 cycles average is 524ms
00:47:10.063 [WARN] [09:36:20.541] [JOURNAL_FLUSHER] WARNING Journal flush operation took 7,876ms last 8 cycles average is 984ms
00:48:26.295 [WARN] [09:37:39.723] [JOURNAL_FLUSHER] WARNING Journal flush operation took 12,296ms last 8 cycles average is 1,537ms
00:48:30.084 [ERROR] Java heap space

这个错误是因为里面没有源代码还是里面有损坏的文件?以下是出现此错误的模块之一的内容:

module_1/
  feature.xml
  build.properties

我知道有一个跳过模块的选项,但由于我使用的是 SonarQube 4.3.2,它已被弃用。有没有办法避免这些模块,或者可能有另一种方法来解决这个错误?

编辑:我发现此错误可能不是由空模块引起的,因为它甚至在完整模块上也会显示此错误。因此,我的 MAVEN_OPTS 配置可能有问题。这是我的 MAVEN_OPTS 配置:-Xmx4096m -XX:MaxPermSize=1000m -Xms4096m

这台电脑有 8 GB 内存,所以内存不是问题。

谢谢。

【问题讨论】:

  • 看起来 SonarQube 正在运行 - Java 只是内存不足。增加运行 Sonar 的 JVM 中使用的最大堆大小。
  • 我已经这样做并增加了 2gb,但仍然失败。
  • @user944849 我将 Xmx 增加到 4096 mb。它仍然有这个错误。你有什么想法吗?
  • 我怀疑你需要那么多 perm gen 或内存,即使是大型构建,我也从来没有使用超过 1 gig。如上所述,MAVEN_OPTS 配置中有一个错字。确保各个选项之间有空格:-Xmx1024m -XX:MaxPermSize=512m -Xms1024m。如果这没有帮助,请尝试使用 -X 运行 Maven 以获取调试输出并查看 MAVEN_OPTS 的值。另外,您是通过 Maven 还是 Jenkins 运行 SonarQube?
  • wiki.jenkins-ci.org/display/JENKINS/… .. 在 %JENKINS_HOME% 中有一个 jenkins.xml .. 在争论中确保 -Xmx256m 被设置。如果错误仍然存​​在,请更改为 -Xmx512m ...不过您不需要那么多

标签: maven sonarqube


【解决方案1】:

我遇到了同样的问题,它曾经挂在 Journal Flushing 上,最终在我在 Findbags Java 默认超时中设置的任何值时超时。

我在运行 sonar maven 命令时使用以下选项解决了这个问题:- MAVEN_OPTS="-Xms256m -Xmx4096m -XX:+UseSerialGC"

这已经解决了我的问题。

帮助我的帖子:- http://sonarqube-archive.15.x6.nabble.com/SonarQube-terminates-at-quot-Journal-Flusher-quot-warning-and-heap-size-error-td5027066.html

【讨论】:

    猜你喜欢
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    • 2013-03-01
    • 2011-03-27
    • 2023-04-07
    相关资源
    最近更新 更多