【问题标题】:SonarLint is super slowSonarLint 超级慢
【发布时间】:2016-01-25 12:22:37
【问题描述】:

我在一个大型 Eclipse RCP 项目中使用新的 Eclipse 插件 SonarLint。它非常慢。分析所有插件项目(超过 310 个)需要几个小时。 SonarLint 为每个项目构建创建一个日志,如下所示:

启动 SonarLint
...
加载全局存储库(从缓存中完成)|时间=98ms
...
加载插件索引(从缓存中完成)|时间=3ms
...
加载项目存储库(完成)|时间=3ms
...
加载质量配置文件(从缓存中完成)|时间=45ms
...
加载活动规则(完成)|时间=174ms
...
加载服务器规则(从缓存中完成)|时间=13ms
...
JavaClasspath 初始化完成:74003 毫秒
...

正如我们所见,大部分时间我们都在等待 java 类路径初始化。更糟糕的是:每次保存一个 java 文件后都会进行初始化!

有没有办法加快这个过程?

【问题讨论】:

  • 这可能是运行 Eclipse / SonarLint 时堆太小的结果。或者在没有足够(物理)内存的系统上运行带有大堆的 Eclipse。查看系统性能统计信息。打开 JVM 的 GC 日志记录。
  • 不。在具有 16 GB RAM 的计算机上使用“-Xmx 8g”JVM 选项。
  • 我还希望从缓存加载速度快几倍(几毫秒)。您的 I/O 是否缓慢或过载?
  • 你解决过这个问题吗?我面临着类似的问题,16GB 机器和非常不受限制的 VM 设置
  • 不,我们刚刚停止使用 SonarLint,直到有人找到解决此问题的方法。

标签: java eclipse sonarlint


【解决方案1】:

删除 SonarLint for Eclipse Java Configuration Helper 不是解决方案:它将删除 SonarLint 与 Java 项目的集成,这意味着分析将不需要几个重要的属性来使其准确,例如类路径。

您可能遇到此问题:https://jira.sonarsource.com/browse/SONARJAVA-1818

如果 SonarLint 运行缓慢,可以尝试以下方法:

  • 确保您使用的是 Java 分析器 4.2,它包含在 SonarLint Eclipse > 2.2.1 中(如果使用连接模式,将其安装在 SonarQube 服务器中 )。
  • 升级到最新版本的 SonarLint(不断改进)
  • 增加heap space used by Eclipse

如果您仍然遇到性能问题,请告诉我们您是如何使用 SonarLint 的,以便我们追踪问题。您可以在SonarLint group 中打开一个主题。

【讨论】:

    猜你喜欢
    • 2021-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    • 2011-07-23
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多