【发布时间】:2017-06-14 20:46:12
【问题描述】:
如果我使用 Eclipse 并想使用 SonarQube 作为单一代码规则源,我知道我需要使用 SonarLint 插件。但是,SonarLint 只会检查 squid 规则,不会检查 Checkstyle/PMD/Findbugs 规则(尽管它们可以在 SonarQube 中使用)。
我的问题:如果一个项目一直在使用 Checkstyle/PMD/Findbugs 规则集,应该如何处理这些规则,以便 Eclipse 开发人员也可以看到它们?
请考虑以下几点:
- 我不想从 SonarQube 手动导出规则并为 Checkstyle/PMD/Findbugs 安装 Eclipse 插件并使用导出的规则对其进行配置。太麻烦了。
- 我看到一些 Checkstyle/PMD/Findbugs 被标记为已弃用,并且有 squid 替代品。没关系。但是,我该如何处理所有未弃用的规则?
【问题讨论】:
-
问题是,你的设置是什么?例如。我们有一个 gradle 脚本来安装所有的 checkstyle/firebug 配置,以及一个用于 git 的提交钩子来检查它。除此之外,根据您的工作流程,也就是如果您使用拉取请求,有一些插件可以在拉取请求中显示这些问题。 - 据我所知,这是你唯一的选择。
-
您要么安装单独的插件,要么使用 SonarLint。没有第三个选项afaik。 SonarLint 使用服务器上质量配置文件中配置的任何内容。如果您的 SonarQube 质量配置文件包括 Checkstyle、FindBugs 等,那么 SonarLint 也会检查它们。
-
@Thomas Jensen:SonarLint不会检查 Checkstyle/Findbugs/PMD 规则,即使它们已在 SonarQube 中成功检查(参见sonarlint.org/eclipse,FAQ 问题 4 )。 SonarLint 的声明:“SonarLint 支持 SonarSource 分析器(SonarJava、SonarJS...)以及扩展这些 SonarSource 分析器的自定义规则。我们不打算支持运行第三方分析器的插件(如 PMD、Android Lint、JSLint。 ..)。大多数情况下,这些分析器已经具有专用的 IDE 集成。”
-
该死,这太烦人了,他们不断在每个版本中删除功能。对不起,我错过了这个功能也消失了。所以,你唯一的选择是安装单独的插件,听起来很悲伤。
标签: eclipse sonarqube checkstyle pmd sonarlint