eclipse 中显示的 Sonarlint 问题与 Sonarqube 项目不同步

Sonarlint issues shown in eclipse not synchronous to Sonarqube project

我在连接模式下使用 Eclipse Java EE IDE(版本:Oxygen Release (4.7.0))和 SonarLint (3.2.0) (Sonarqube 6.5.0)。

我经常遇到 SonarLint 视图(SonarLint On-The-Fly 和 SonarLint Report)中显示的问题与 Sonarqube 中显示的问题不同。 有趣的是,使用完整的空项目仅创建这个问题是不可重现的

我使用的质量配置文件仅包含 Sonarqube 附带的基本规则(没有来自 PMD、Checkstyle 或 FindBugs 的附加规则)

  1. 规则不是已用质量配置文件的一部分 ("Sonar way rules not included"),但仍显示在 SonarLint 中(即“不应使用 Java 8 的 'Files.exists'(鱿鱼: S3725)

  2. Sonarqube 中显示的问题在 SonarLint 中不可用(即 "Source files should not have any duplicated blocks")

  3. SonarLint 中显示的问题在质量配置文件中不活跃(即“'Preconditions' 并且日志记录参数不需要评估 (squid:S2629)”)

有人可以告诉我 SonarLint 和 Sonarqube 之间有时存在偏差是否是一个已知问题?因为这个问题在示例项目中不能作为单个问题重现,所以我无法定位问题。

2017 年 9 月 21 日更新09:28

正如您在附加的屏幕截图中看到的(作为偏差的示例)即使项目绑定到 Sonarqube 服务器也存在差异

听起来您的项目不在 Connected Mode 中。这可以解释 S3725 被提升 - 它是 Sonar 方式配置文件的一部分,默认情况下用于未连接的项目。它还可以解释为什么您在 SonarLint 中看不到与在 SonarQube 中看到的相同的问题。

您的遗漏重复问题来自 Common rules 之一。这些规则 在服务器端处理。在拉取请求分析、SonarLint 或分析报告未 提交到服务器的任何其他上下文中,您不会看到它们的问题。