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

Flutter构建报错:lifecycle-livedata-core触发D8空指针异常

解决Flutter构建时D8空指针(lifecycle-livedata-core相关)错误

以下是针对该问题的可行解决方案:

  • 清理Gradle及项目缓存

    • 删除本地Gradle缓存目录:C:\Users\user\.gradle\caches
    • 执行Flutter项目清理:flutter clean,随后运行flutter pub get
    • 进入项目的android目录,执行gradlew clean(Windows环境)
  • 强制指定稳定版lifecycle依赖
    在android/app/build.gradle中添加依赖锁定配置,规避2.8.4版本的潜在问题:

    configurations.all {
        resolutionStrategy {
            force 'androidx.lifecycle:lifecycle-livedata-core:2.7.0'
            force 'androidx.lifecycle:lifecycle-viewmodel:2.7.0'
            force 'androidx.lifecycle:lifecycle-runtime:2.7.0'
        }
    }
    
  • 检查并修复Android SDK组件

    • 打开Android Studio的SDK Manager,确保Android SDK Build-Tools版本与项目配置匹配,可尝试更新至最新稳定版或回退至项目之前使用的版本
    • 确认对应版本的Android SDK Platform已完整安装
  • 调整Dex编译配置
    在android/app/build.gradle的android块中添加以下优化配置:

    android {
        dexOptions {
            javaMaxHeapSize "4g"
            preDexLibraries = false
        }
        compileOptions {
            coreLibraryDesugaringEnabled true
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
    }
    
  • 排查依赖冲突
    执行flutter pub deps --tree查看依赖树,若发现其他依赖间接引入冲突的lifecycle版本,可在pubspec.yaml中针对性排除:

    dependencies:
      problematic_package:
        version: ^x.y.z
        exclude:
          - androidx.lifecycle:lifecycle-livedata-core
    
  • 重建Android模块

    • 删除项目android目录下的.gradle和build文件夹
    • 执行flutter create --platforms android .重建Android模块(命令末尾的.表示保留现有项目配置)

内容的提问来源于stack exchange,提问作者Riccardo Mazzi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 15:07:03