首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从命令行生成代码度量文件没有结果

从命令行生成代码度量文件没有结果
EN

Stack Overflow用户
提问于 2021-04-18 23:47:58
回答 1查看 279关注 0票数 0

我正在尝试为包含多个模块的项目生成Code Metrics数据。当我在Visual Studio 2019中生成代码度量分析时,我得到了项目的有效结果。我将我的命令行生成基于微软文档:https://docs.microsoft.com/en-us/visualstudio/code-quality/how-to-generate-code-metrics-data?view=vs-2019我有以下命令行脚本作为构建后事件运行:

代码语言:javascript
复制
msbuild SIMSMobile.sln /t:Metrics /p:MetricsOutputFile="MetricsOutput.xml" /p:Configuration="Debugging Release"

就在一个多月前,这种方法在一个xml文件中给出了有效的结果,如Microsoft文档中所述。最近我发现我的结果不再有效。生成的文件如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<CodeMetricsReport Version="1.0">
  <Targets>
    <Target Name="SIMSMobileView.csproj">
      <Assembly Name="SIMSMobileView, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null">
        <Metrics>
          <Metric Name="MaintainabilityIndex" Value="100" />
          <Metric Name="CyclomaticComplexity" Value="0" />
          <Metric Name="ClassCoupling" Value="0" />
          <Metric Name="DepthOfInheritance" Value="0" />
          <Metric Name="SourceLines" Value="0" />
          <Metric Name="ExecutableLines" Value="0" />
        </Metrics>
      </Assembly>
    </Target>
  </Targets>
</CodeMetricsReport>

我不明白这是怎么发生的。我没有改变我的脚本或者其他什么。我尝试检出我知道当时正在工作的提交,但运行我的命令行指标生成得到与上面相同的空xml文件。

我尝试使用Metrics.exe方法生成我的输出指标文件,如微软文档中所述,这给出了与上面相同的空文件。我已经将Microsoft.CodeAnalysis.Analyzers Nuget包更新到了最新的稳定版本,但这没有任何作用。在VS 2019中对我的解决方案运行Code Metrics会给我带来有意义的结果。为什么使用命令行和生成输出文件不能得到相同的结果?

EN

回答 1

Stack Overflow用户

发布于 2021-05-07 01:30:16

我在Windows服务器上也有类似的行为。在我设置了环境变量MSBuildSDKsPath之后,Metrics.exe再次生成正确的指标文件。

代码语言:javascript
复制
set MSBuildSDKsPath=C:\Program Files\dotnet\sdk\3.1.302\Sdks

我仍然不知道之前它为什么有效,但当我找到确切的根本原因时,我会让你知道的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67150469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档