从 dartanalyzer 中排除所有生成的代码

wig*_*igy 18 static-analysis dart visual-studio-code

我试图使用以下analysis_options.yaml文件从包中排除所有生成的文件。

include: package:pedantic/analysis_options.yaml
analyzer:
    strong-mode:
        implicit-casts: false
        implicit-dynamic: false
    exclude:
        - lib/**.g.dart
Run Code Online (Sandbox Code Playgroud)

lib/store/state/presentations_state.g.dart我仍然收到名为“违反规则”的文件的错误implicit_dynamic_parameter。如果我排除**.g.dart没有lib/前缀,dartanalyzer则可以正常工作,但dart-code.dart-codeVS Code 插件会Undefined alias. dart(parse_error)在 YAML 文件第一行的某个位置报告,从而使整个项目标记为有错误。

我也可以在具有多个包和单个包的 monorepos 中重现这一点。

Tob*_*obi 30

我将以下内容添加到analysis_options.yaml对我有用的内容中:


analyzer:
  exclude:
    - '**.freezed.dart'
    - '**.g.dart'
    - '**.gr.dart'
    - '**/generated_plugin_registrant.dart'
Run Code Online (Sandbox Code Playgroud)

不再分析与模式匹配的所有文件,无论其在文件路径中的位置如何。

引号对于防止 yaml 中的语法错误是必要的