如何解决 运行 代码分析任务 TFS 中的 File can't be indexed twice 错误?

How to solve File can’t be indexed twice error in Run Code Analysis task TFS?

我正在使用 SonarQube 版本 7.4 和 TFS 构建任务 运行 代码分析版本 4

我遇到错误 文件无法被索引两次。请检查 inclusion/exclusion 模式是否为主文件和测试文件生成不相交的集合

以下是我对 SonarQube 任务步骤准备分析的配置

sonar.verbose=true
sonar.sources=(Build.SourcesDirectory)
sonar.inclusions=Code/**
sonar.cs.vstest.reportsPaths=**/*.trx
sonar.cs.vscoveragexml.reportsPaths=**/*.coveragexml
sonar.cfamily.build-wrapper-output=(Build.SourcesDirectory)
sonar.cfamily.threads=6
sonar.cfamily.cppunit.reportsPath=**/result.xml
sonar.branch.name=(Build.SourceBranchName) sonar.dependencyCheck.reportPath=(Build.ArtifactStagingDirectory)\dependency-check-report.xml
sonar.dependencyCheck.htmlReportPath=$(Build.ArtifactStagingDirectory)\dependency-check-report.html

下面还有我的项目文件夹结构

Client
    Code
    Lib
    Package
    Research
    Runners
    Tools

我只想扫描代码文件夹,请帮助我。

How to solve File can’t be indexed twice error in Run Code Analysis task TFS?

根据您对 SonarQube 任务步骤准备分析的配置,您似乎没有正确配置源文件和测试文件。

根据FAQ on SonarOpenCommunity,我们可以知道:

Q: ERROR: Caused by: File [...] can't be indexed twice.

A: In case of below error you have to verify your exclusion/inclusion properties. Please check that inclusion/exclusion patterns produce disjoint sets for source and test files

因此,要解决此问题,我们需要检查 inclusion/exclusion 模式生成 源文件和测试文件.

的不相交集

@Naveen Kumar 的解决方案:

删除了 sonar.sources 并添加了 sonar.inclusions 并且 sonar.exclusions 解决了他的问题。