Flutter项目中添加自定义Google Fonts遇错求助
Flutter添加Google Fonts报错解决方案
1. pubspec.yaml格式错误修复
报错Error on line 85, column 7 of pubspec.yaml: While parsing a block collection, expected '-'是因为资源配置的YAML格式错误,Flutter不支持嵌套的目录列表写法,且缩进层级混乱。
正确的资源配置方式
假设你的字体文件路径为google-fonts/fonts/OpenSans-xxx.ttf,修改pubspec.yaml的assets段为以下两种方式之一:
方式一:逐个声明字体文件
uses-material-design: true assets: - assets/ - google-fonts/fonts/OpenSans-Bold.ttf - google-fonts/fonts/OpenSans-SemiBold.ttf - google-fonts/fonts/OpenSans-Regular.ttf
方式二:声明整个字体目录(更简洁)
uses-material-design: true assets: - assets/ - google-fonts/fonts/
关键注意点
- YAML对缩进严格要求,所有以
-开头的列表项必须保持相同缩进(建议用2个空格); - 不要使用嵌套的子列表写法(比如你之前的
- google-fonts/: - fonts/: ...),Flutter无法识别这种格式。
修改后重新执行:
dart pub get --no-example
2. "文件包含病毒或潜在有害软件"报错修复
这个错误是杀毒软件(如Windows Defender)误将Flutter的编译工具或快照文件标记为恶意软件导致的。
解决步骤
- 打开杀毒软件的病毒和威胁防护设置,将以下路径添加到信任列表:
C:\flutter\bin\cache\dart-sdk\bin\dartaotruntime.exeC:\flutter\bin\cache\dart-sdk\bin\snapshots\frontend_server_aot.dart.snapshot- 你的项目根目录:
D:\project\project1\
- 清除Flutter缓存:
flutter clean - 重新运行项目:
flutter run
如果需要临时解决问题,可暂时关闭杀毒软件的实时保护(调试完成后务必开启),完成编译后再恢复防护。
内容的提问来源于stack exchange,提问作者Zoheth George
相关产品推荐
相关产品推荐

