【问题标题】:"Run Code Analysis" does not run my code analyzer“运行代码分析”不运行我的代码分析器
【发布时间】:2020-06-07 10:42:27
【问题描述】:

我已经编写了一个代码分析器作为我的 Visual Studio 包的一部分。

这与this page 上的说明相对应,只是它是我现有软件包的一部分,而不是独立分析器。

分析器注册自身以分析 SyntaxNode 类型 StringLiteralExpression 和 InterpolatedStringExpression。

public override void Initialize ( AnalysisContext context )
{
  context.RegisterSyntaxNodeAction ( AnalyzeString, SyntaxKind.StringLiteralExpression, SyntaxKind.InterpolatedStringExpression ) ;
}

如上所述here

默认情况下,实时代码分析仅针对 Visual Studio 中打开的文件执行分析器。

这是正确的。我的分析器在打开的文件上运行。

同一页面继续:

手动运行代码分析

  • 在解决方案资源管理器中,单击项目。

  • 在分析菜单上,单击对项目名称运行代码分析。

代码分析将在后台开始执行。你应该看到消息 Running code analysis for ... 在 Visual Studio 状态栏中 左下角。代码分析完成后,状态消息将 更改为 完成代码分析。错误列表即将刷新 带有所有代码分析诊断

在这种情况下,我的分析不会运行。

我在构造函数、SupportedDiagnostics 属性 get、Initialize 函数和分析函数本身中放置了断点。如果我通过“分析”菜单(或通过解决方案资源管理器中的上下文菜单)手动启动代码分析,则它们都不会被输入。

是否需要一些额外的条件才能激活代码分析器以进行手动代码分析?

【问题讨论】:

标签: visual-studio-2019 roslyn roslyn-code-analysis vspackage visual-studio-package


【解决方案1】:

我也遇到了这个奇怪的问题。 就我而言,我使用了“错误的”开发人员命令提示符。 我在安装 VS2017 后安装了 VS Build 工具,它还安装了 2nd Developer Command Prompt。

2 开发者命令提示符的开始菜单快捷键如下:

答:BuildTools(不起作用!)

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsDevCmd.bat"

B. VS 专业(有效!)

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Tools\VsDevCmd.bat"

我花了整个下午试图弄清楚这一点! :-(

【讨论】:

    猜你喜欢
    • 2013-01-03
    • 1970-01-01
    • 2015-11-17
    • 2013-02-02
    • 2013-03-31
    • 1970-01-01
    • 1970-01-01
    • 2015-10-24
    • 1970-01-01
    相关资源
    最近更新 更多