【问题标题】:Setup to detect duplicate C# code设置以检测重复的 C# 代码
【发布时间】:2015-05-27 13:34:38
【问题描述】:

我无法在 sonarq 中检测到重复代码 我已经启动并运行了 Sonarqube 5.1 并安装了以下插件:

  • C# [csharp] 4.0
  • 问题分配 [问题分配] 1.6
  • 问题密度 [issuesdensity] 1.0
  • Java [java] 3.0
  • JavaScript [javascript] 2.5
  • 德语包 [l10nde] 1.1
  • Motion Chart [motionchart] 1.7
  • Python [python] 1.5
  • Redmine [redmine] 0.2
  • ReSharper [resharper] 1.0
  • Git [scmgit] 1.0
  • Mercurial [scmmercurial] 1.1
  • Scm 统计 [scmstats] 0.3.1
  • SVN [scmsvn] 1.0
  • TFS [scmtfs] 1.0
  • StyleCop [stylecop] 1.1
  • Visual Studio 项目的分析引导程序 [visualstudio] 1.2
  • 网络 [网络] 2.3
  • XML [xml] 1.2

sonar-Project.properties:

sonar.projectKey=simplecalc
sonar.projectName=Simple Calc
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8
sonar.visualstudio.enable=true
sonar.cs.vstest.reportsPaths=TestResults/*.trx
sonar.cs.dotcover.reportsPaths=dotCover.CalcLibrary.UnitTests.html
sonar.sources=.

【问题讨论】:

  • “无法检测到重复代码”是什么意思?小部件 Duplication 是空的还是显示 0% ?
  • 它显示为 0%,但我故意复制了整个班级并将其放在不同的程序集中。一定有重复的代码

标签: c# sonarqube sonarqube-5.0


【解决方案1】:

解决了!从源代码中可以看出,有两个参数可以控制 CPD 传感器:

必须根据需要进行调整:

sonar.cpd.cs.minimumLines = 1
sonar.cpd.cs.minimumTokens = 1

【讨论】:

  • 这些属性不是故意公开的@Thomas,因为现在你会产生一些噪音。您是否确认您的重复代码段位于同一个项目中并且包含至少 10 行代码?
  • 你能澄清一下吗?应在何处发布此设置。您能否提供您的属性文件的示例。我将 thous 设置放在我的文件中,但如果我的值为 1 或 100,看起来结果没有改变,这显然意味着它不适合我。
猜你喜欢
  • 2011-11-19
  • 2018-05-11
  • 2011-04-17
  • 2010-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-06
相关资源
最近更新 更多