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

集成url_launcher包时遇:app:mergeLibDexDebug执行失败报错求助

Flutter集成url_launcher时D8空指针构建错误解决方法

报错详情

ERROR:D:\l_store\build\url_launcher_android\intermediates\runtime_library_classes_dir\debug\io\flutter\plugins\urllauncher\WebViewActivity$1.class: D8: java.lang.NullPointerException

FAILURE: 构建因异常失败。

* 问题原因:任务':app:mergeLibDexDebug'执行失败。
> 无法解析配置':app:debugRuntimeClasspath'的所有文件。未能转换debug(项目:url_launcher_android)以匹配属性{artifactType=android-dex, asm-transformed-variant=NONE, com.android.build.api.attributes.AgpVersionAttr=7.3.0, com.android.build.api.attributes.BuildTypeAttr=debug, com.android.build.gradle.internal.attributes.VariantAttr=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=24, org.gradle.libraryelements=classes, org.gradle.usage=java-runtime}。
> DexingNoClasspathTransform执行失败: D:\l_store\build\url_launcher_android\intermediates\runtime_library_classes_dir\debug。
> 转译dex时出错。

* 构建提示:
使用--stacktrace选项获取堆栈跟踪。使用--info或--debug选项获取更多日志输出。使用--scan选项获取完整分析信息。

构建在3秒内失败
异常:Gradle任务assembleDebug执行失败,退出码为1

解决步骤

  • 清理构建缓存
    执行命令清理Flutter和Android构建缓存:

    flutter clean
    cd android && ./gradlew clean
    cd .. && flutter pub get
    
  • 检查url_launcher版本兼容性
    确保pubspec.yaml中url_launcher版本与当前Flutter SDK兼容,尝试升级到最新稳定版:

    dependencies:
      url_launcher: ^6.2.5 # 替换为当前最新稳定版
    

    执行flutter pub upgrade url_launcher完成依赖更新。

  • 调整Android构建配置

    1. 打开android/app/build.gradle,确认minSdkVersion为24或更高(与报错中dexing-min-sdk=24一致),低于则修改:
      defaultConfig {
          minSdkVersion 24
      }
      
    2. 检查AGP版本(报错中为7.3.0),若版本过低,在android/build.gradle中升级AGP与Gradle版本(需保证二者版本匹配,如AGP7.4.x对应Gradle7.5+):
      buildscript {
          ext {
              compileSdkVersion = 34
              minSdkVersion = 24
              targetSdkVersion = 34
              agpVersion = "7.4.2" // 选择兼容的AGP版本
          }
          dependencies {
              classpath "com.android.tools.build:gradle:$agpVersion"
          }
      }
      
      同步修改gradle/wrapper/gradle-wrapper.properties中的Gradle版本:
      distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
      
  • 临时禁用Desugaring
    在android/app/build.gradle中关闭desugaring验证是否解决问题:

    android {
        compileOptions {
            coreLibraryDesugaringEnabled false
        }
    }
    
  • 排查依赖冲突
    执行flutter pub deps查看依赖树,若存在与url_launcher冲突的依赖,通过dependency_overrides强制指定版本:

    dependency_overrides:
      # 示例:强制指定冲突依赖版本
      some_conflicting_package: ^x.y.z
    
  • 重新生成Android项目文件
    若以上方法无效,删除android目录后重新生成:

    rm -rf android
    flutter create . --platforms android
    

内容的提问来源于stack exchange,提问作者Najam ALI

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 18:52:46