我正在尝试使用以下analysis_options.yaml
文件从包中排除所有生成的文件。
include: package:pedantic/analysis_options.yaml
analyzer:
strong-mode:
implicit-casts: false
implicit-dynamic: false
exclude:
- lib/**.g.dart
对于名为
lib/store/state/presentations_state.g.dart
的文件,它仍然会违反规则implicit_dynamic_parameter
,但仍会出错。如果我排除不带**.g.dart
前缀的lib/
,则dartanalyzer
可以正常工作,但是dart-code.dart-code
VS Code插件在YAML文件的第一行中报告Undefined alias. dart(parse_error)
,从而使整个项目被标记为有错误。我可以在具有多个程序包和单个程序包的monorepos中重现此内容。
最佳答案
参见https://github.com/dart-lang/source_gen/tree/master/source_gen#configuring-combining_builder-ignore_for_file
假设您使用的生成器基于package:source_gen
,则可以使用此技巧在生成的文件中创建正确的忽略项!
https://github.com/kevmoo/peanut.dart/commit/9877105daecf59b8f5eb25431ac691a38a3e636c
https://github.com/kevmoo/stats/commit/bb2fefaa22fc11c10acfe2f6418b3abba1e51909
https://github.com/kevmoo/build_cli/commit/619495c91caab873c2f48ac36a941c893d9b86b7
关于dart - 从dartanalyzer中排除所有生成的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61225223/