1

我想实现SonarLint插件到我的IntelliJ IDE中。 我们有一个相当庞大的代码库,在运行扫描所有项目时,SonarLint最终花费了大量的时间,如果我们想查找代码的异味和问题,只有一个特定的模块或子项目,而不是整个代码库,我不知道如何去做。如何限制SonarLint仅分析项目中的spefic模块?

我用我的SonarLint以下属性分析属性

sonar.projectKey com.ttt.etrde.apps.servicemanager sonar.projectKey^h尝试:\来源\ new_folder \ ETS \父母\ SERVICES \ svcmgr

但仍然声纳最终从ets级别一路扫描整个项目。

+0

SonarLint的主要用例是在您正在使用的文件中发现新问题。为什么要分析SonarLint中的整个模块? –

+0

@G。Ann-SonarSourceTeam因为我们刚刚开始实施SonarQube和SonarLint,其中一个原因是我们没有在SonarQube实现中获得模块特定报告,它们按字母顺序排列用于整个项目,并且我们跨越了超过200万行代码。我们需要告诉特定团队他们的代码有什么问题。 第二个原因是,知道尚未分析的代码中存在的所有错误是很好的。 我看到我们可以选择扫描当前文件和选项来扫描整个项目,但没有给定模块的选项。 – Sameer

+0

理想情况下,你会[编辑]你的问题,包括这些细节。 –

回答

1

TL; DR:不能

龙答:你不能找到一种方法来限制SonarLint分析,以一个单一的模块,因为这不是它打算如何使用。

  • SonarLint的主要用例是在您输入代码时发现新问题。这是自动发生的。
  • 第二个用例是查看您正在处理的文件中的现有问题,以便您可以在处理它时修复它们。这在SonarLint的“当前文件”标签中自动可见
  • 第三用例是在提交集合之前仔细检查提交集合中的文件。这在“项目文件”选项卡中可见。
  • 在一个非常遥远的第四位是“我想知道我的项目中是否还有其他问题。”

但实际上,这个第四个用例(您想扩展的用例)仅仅作为尚未采用SonarQube的人员的一个案例提供。既然你采用SonarQube让我们来看看它是如何满足您的具体情况:

我们需要告诉特殊的团队有什么不对他们的代码。

鉴于不同的团队负责不同的模块,最好的方法是使用SonarQube的钻取容量查看模块主页。要做到这一点,去到项目的代码页,并使用模块的“链接去”图标

enter image description here

去该模块的主页。在那里您可以看到您为项目看到的所有相同数据。然后,这成为个人队伍的去向。

第二个原因是,知道所有尚未分析的代码中存在的错误是很好的。

从模块主页,您可以在项目主页上找到相同的下钻问题。

+0

你不是非常不同,你是不是暗示我们不能做到这一点,或者我们不应该这样做? 我问的原因是我们的SonarQube infra团队无法实现模块级过滤器。 有没有一个地方可以查看样本分析属性文件,以便我们至少可以让SonarQube在POC中工作! – Sameer

+0

两者,实际上。你是什​​么意思“无法实现模块级过滤器”?实现哪里?怎么样? –