新笔记本克隆GitHub上的Flutter项目无法运行求助
Flutter项目克隆后运行失败问题
问题描述
新笔记本上克隆自己的Flutter音乐播放器项目后,按官方指南配置Flutter环境,新项目可正常运行,但该项目运行时抛出以下错误:
Launching lib\main.dart on RMX3630 in debug mode... ERROR:C:\Users\micha\Flutter Projects\flutter-music-player-1\build\path_provider_android\intermediates\runtime_library_classes_jar\debug\classes.jar: D8: java.lang.NullPointerException: 无法调用"String.length()",因为""为null FAILURE: Build failed with an exception. - 问题所在: 任务 ':app:mergeLibDexDebug' 执行失败。 > 无法解析配置 ':app:debugRuntimeClasspath' 的所有文件。 > 无法转换 classes.jar(项目 :path_provider_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=21, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}。 >> DexingWithClasspathTransform 执行失败: C:\Users\micha\Flutter Projects\flutter-music-player-1\build\path_provider_android\intermediates\runtime_library_classes_jar\debug\classes.jar。 >>> Dexing 时出错。 - 建议尝试: > 使用 --stacktrace 选项获取堆栈跟踪。 > 使用 --info 或 --debug 选项获取更多日志输出。 > 使用 --scan 选项获取完整分析信息。 > 访问Gradle官方帮助获取更多帮助。 BUILD FAILED in 5s Error: Gradle task assembleDebug failed with exit code 1
已尝试安装旧笔记本使用的JDK21,问题仍未解决。
解决建议
- 清理构建缓存与依赖
执行以下命令彻底清理后重新拉取依赖:flutter clean # Windows系统手动删除 android/.gradle、android/build 文件夹 flutter pub get - 锁定
path_provider_android稳定版本
打开项目根目录的pubspec.yaml,将path_provider_android依赖指定为稳定版本,例如:
修改后执行path_provider_android: ^2.2.0flutter pub get更新依赖。 - 匹配JDK与AGP版本
项目使用的AGP 7.3.0与JDK21兼容性不佳,建议切换到JDK17(AGP 7.x系列推荐版本),并在android/gradle.properties中配置JDK路径:org.gradle.java.home=C:\\Program Files\\Java\\jdk-17.0.x - 升级Flutter SDK
执行flutter upgrade将Flutter更新到最新稳定版,确保SDK与项目依赖版本兼容。 - 重置Android构建配置
删除android目录下的.gradle、build文件夹,重新执行flutter run生成全新构建配置。
内容的提问来源于stack exchange,提问作者Michael Rahardja
相关产品推荐
相关产品推荐

