Flutter编译Android项目报错:无法创建:path_provider_android:generateDebugUnitTestConfig任务
问题根因
该报错为Windows平台特有问题,核心原因是Gradle不支持跨磁盘分区关联任务路径:你的项目存放在E盘,Flutter Pub全局缓存存放在F盘,构建path_provider_android插件时需要关联F盘的插件源码和E盘的本地build生成文件,跨盘操作触发了Gradle的路径校验限制。
修复方案
方案1:统一Pub缓存路径到项目所在磁盘(推荐)
该方案从全局解决所有项目的同类跨盘问题,操作步骤如下:
- 关闭所有打开的Flutter项目、IDE、终端窗口
- 在E盘新建Pub缓存目录,例如
E:\flutter\.pub-cache - 新增Windows系统环境变量,变量名为
PUB_CACHE,值为刚才新建的目录路径 - 将原F盘
F:\flutter\.pub-cache下的所有文件剪切到新的E盘缓存目录,也可以直接删除旧缓存后续自动重新下载 - 重新打开IDE进入项目根目录,依次执行命令:
flutter clean flutter pub get - 重新构建Android项目即可
方案2:修改项目构建输出路径到Pub缓存所在磁盘
不想修改全局缓存配置可以用该方案,仅对当前项目生效:
- 打开项目根目录下
android/build.gradle文件 - 在
allprojects配置闭包中新增构建目录指定规则,示例如下:allprojects { buildDir = "F:/flutter_build/${rootProject.name}/${project.name}" // 原有其他配置不需要修改 } - 回到项目根目录执行
flutter clean、flutter pub get后重新构建即可
方案3:临时跳过单元测试任务(仅临时调试用)
如果只是需要快速打包验证,可以临时跳过单元测试相关任务生成:
- 在项目
android/gradle.properties文件中添加配置:android.enableUnitTestBinaryResources=false - 或者直接在构建命令中添加跳过测试参数:
flutter build apk --no-test
内容的提问来源于stack exchange,提问作者Osama Mohammed
相关产品推荐
相关产品推荐

