You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter项目构建失败:TextTheme无subtitle1属性报错求助

Flutter构建错误:TextTheme未定义subtitle1 getter的解决办法

错误详情

../../../.pub-cache/hosted/pub.dev/getwidget-2.1.1/lib/components/avatar/gf_avatar.dart:89:51: 错误:类'TextTheme'未定义getter 'subtitle1'。
'TextTheme'来自'package:flutter/src/material/text_theme.dart'('/Library/flutter/packages/flutter/lib/src/material/text_theme.dart')。请尝试将名称更正为现有getter的名称,或者定义一个名为'subtitle1'的getter或字段。
TextStyle? textStyle = theme.primaryTextTheme.subtitle1?.copyWith(
^^^^^^^^^
目标kernel_snapshot失败:异常
失败:构建因异常而终止。
出错原因:任务':app:compileFlutterBuildDebug'执行失败。
进程'command '/Library/flutter/bin/flutter''以非零退出值1结束
构建在13秒内失败错误:Gradle任务assembleDebug以退出代码1失败

解决步骤

1. 升级getwidget依赖包(推荐方案)

  • 打开项目根目录下的pubspec.yaml文件,找到getwidget依赖项,将版本号更新为最新兼容版本。例如:
    dependencies:
      getwidget: ^4.0.0  # 替换为实际最新稳定版
    
  • 执行命令更新依赖:
    flutter pub get
    

2. 临时修改依赖包源码(应急方案)

如果暂时无法升级包,可手动修改getwidget源码适配当前Flutter版本:

  • 找到报错文件路径:../../../.pub-cache/hosted/pub.dev/getwidget-2.1.1/lib/components/avatar/gf_avatar.dart
  • 定位到第89行,将subtitle1替换为Flutter当前版本对应的属性(Flutter 3.x中subtitle1对应titleMedium):
    TextStyle? textStyle = theme.primaryTextTheme.titleMedium?.copyWith(
    
  • 注意:此修改会在下次执行flutter pub get时被覆盖,仅作临时应急用。

3. 确认Flutter版本兼容性

执行以下命令查看当前Flutter版本,确保第三方包与Flutter版本匹配:

flutter --version

若使用Flutter 3.x及以上版本,必须使用支持Material 3的getwidget新版本。

内容的提问来源于stack exchange,提问作者Geoffroy Evane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 20:22:45