0

我正在使用 Sonar 3.4.1,并且在尝试分析 DotNet 项目时,我在仪表板中获得了文件夹和文件名的“空”值。

fxCop 工具生成的 fxcop-report.xml 在 XML 文件中有标签,默认情况下它应该有属性(Certainty、Level、Path、File、Line)。但是对于某些问题,它只有(Certainty & Level)属性。请检查并让我知道为什么标签中没有其他属性。

fxcop-report.xml 也有以下异常,请让我知道这是否会导致 Fxcop-report.xml 中的问题。

<Exception Keyword="CA0060" Kind="Engine" TreatAsWarning="True">
<Type>Microsoft.FxCop.Sdk.FxCopException</Type>
<ExceptionMessage>
The indirectly-referenced assembly 'VBIDE, Version=5.3.0.0, Culture=neutral, PublicKeyToken=ee34b28a434d7478' could not be found.
This assembly is not required for analysis, however, analysis results could be incomplete.
This assembly was referenced by: E:\CCAP_Demo\DotNet\MAH_CHARLIE_Print_Application\source\Print\bin\Debug\Word.dll.
</ExceptionMessage>
</Exception>
4

1 回答 1

0

它应该具有属性(Certainty、Level、Path、File、Line)。但是对于某些问题,它只有(Certainty & Level)属性。

FxCop 使用 PDB 文件中的信息来提供位置信息。但是,PDB 仅包含对调试场景有用的信息,这意味着与不可执行代码(例如:接口定义)相关联的 FxCop 规则违规将不会在报告中包含位置信息。

fxcop-report.xml 也有以下异常,请让我知道这是否可能导致 Fxcop-report.xml 中的问题

当 FxCop 运行时,它找不到 VBIDE 程序集。您可以使用 sonar.fxcop.assemblyDependencyDirectories 属性来指定执行 sonar-runner 时可以找到的位置。

于 2013-11-08T13:50:59.180 回答