【问题标题】:Disable sonarlint automatic analysis in Eclipse by default默认禁用 Eclipse 中的 sonarlint 自动分析
【发布时间】:2018-07-25 00:16:01
【问题描述】:

我们最近将 SonarLint 添加到我们的默认 Eclipse 安装中,但仅在一些新项目中使用 sonarlint。虽然我们对这些项目的 sonarlint 感到非常满意,但将所有旧项目的自动分析默认设置为开启会减慢 Eclipse 的启动速度。

我可以浏览 600 多个项目并添加一个包含 autoEnabled=false.settings/org.sonarlint.eclipse.core.prefs 文件,但我宁愿让项目默认为 false 并为我们创建的项目添加一个 autoEnabled=true 首选项文件努力遵守 sonarlint 规则。

有什么办法吗?

我查看了Disable Sonarlint automatic scan for Eclipse Remote Systems Explorer,但投票最多的答案只是建议做一些我明确试图避免做的事情,即在 600 多个项目上设置prefs 而其他答案似乎没有也可以帮忙。

【问题讨论】:

    标签: eclipse sonarlint


    【解决方案1】:

    从这个discussion看来,默认情况下没有办法全局禁用自动分析。但是有一个解决方法:您可以在分析器配置中为您的文件添加 sonar.exclusions 属性(Window->Preferences->SonarLint->Analyzer Properties)。

    例如 sonar.exclusions=**/*.js 从自动分析中排除所有 *.js 文件

    【讨论】:

    • 这对我来说似乎没有任何区别,即使我添加了排除项,我也会看到进度消息说“为每个文件初始化语言服务器”,包括我要求排除的所有文件.
    【解决方案2】:

    这对我有用:

    窗口->首选项->SonarLint->文件排除 然后是新的 GLOB 模式:“**/*”

    【讨论】:

      【解决方案3】:

      我还尝试在一个 Eclipse 工作区中的所有项目中禁用 SonarLint。以下设置不适用于我使用 Window->Preferences->SonarLint->Analyzer Properties sonar.exclusions=**/*.java,**/*.class

      所以我最终在 Window->Preferences->SonarLint 下使用了这个设置,它确实有效 Test file regular expressions=**/*Test.*,**/test/**/*,**/*.java,**/*.class

      我认为 SonarLint 插件的疏忽不支持禁用插件的功能,或阻止其在工作区级别启动。不幸的是,我安装的 Eclipse 是集中管理的,我无法自己卸载插件。

      [编辑] 如果您对 sonarlint 没有性能问题,另一个选项是允许它运行但忽略报告的问题,方法是转到 Problems 窗格并选择 Filters,在 Types 下您可以禁用 SonarLint

      【讨论】:

      • 那么测试文件与非测试文件的处理方式不同吗?感谢您的建议,但这似乎对我的设置没有任何影响(Eclipse 4.7.3a 和 SonarLint 3.6.02018060712)。
      • 是的,在我的插件的默认安装中使用值**/*Test.*,**/test/**/* 排除了测试文件,所以我只是添加到此路径中。我在 Eclipse 4.7.2,SonarLint 3.0.1.1181
      【解决方案4】:

      您可以通过取消选中项目首选项中的“自动运行声纳”来针对项目禁用此功能。

      【讨论】:

      猜你喜欢
      • 2017-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 1970-01-01
      • 2017-10-06
      • 2017-01-28
      相关资源
      最近更新 更多