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

Flutter项目中wakelock_plus插件构建依赖解析与任务创建失败求助

Flutter项目中wakelock_plus插件构建依赖解析与任务创建失败求助

遇到这个构建失败的问题确实挺头疼的,我之前也碰到过类似的路径冲突导致的Gradle任务异常,咱们先把错误信息摆出来,再一步步解决:

Could not determine the dependencies of task ':wakelock_plus:generateReleaseLintModel'.
Could not resolve all dependencies for configuration ':wakelock_plus:releaseUnitTestRuntimeClasspath'.
Could not create task ':wakelock_plus:testDebugUnitTest'.
this and base files have different roots: D:\Project\build\wakelock_plus and C:\Users\Muryam\AppData\Local\Pub\Cache\hosted\pub.dev\wakelock_plus-1.3.2\android.

问题核心分析

这个错误的根源是插件的构建缓存路径和本地pub缓存的插件路径根目录不一致,Gradle在处理wakelock_plus的测试任务时,无法同时识别两个不同根目录的文件,导致任务创建失败。

具体解决步骤

  • 第一步:清除所有构建缓存
    先把项目里的旧构建缓存清干净,避免残留的异常文件干扰:

    1. 在项目根目录执行:flutter clean
    2. 进入项目的android子目录,执行:gradlew clean(Windows系统直接用这个命令,Mac/Linux用./gradlew clean)
  • 第二步:重新拉取依赖并尝试更新插件

    1. 回到项目根目录,执行:flutter pub get,让Flutter重新解析并下载依赖
    2. 如果问题还存在,建议把wakelock_plus更新到最新稳定版,修改pubspec.yaml里的依赖声明,比如改成wakelock_plus: ^2.1.0(具体版本号可以查pub.dev的最新版),然后再执行flutter pub get
  • 第三步:清除pub缓存并重新下载
    有时候pub缓存里的插件文件可能损坏或者路径关联异常,直接清除缓存重新下载:
    执行命令:flutter pub cache clean,完成后再执行flutter pub get重新获取所有依赖

  • 第四步:IDE缓存重置(如果用Android Studio/IntelliJ)
    打开Android Studio,点击顶部菜单File > Invalidate Caches...,勾选Clear file system cache and local history,然后点击Invalidate and Restart,让IDE彻底重置缓存

进阶排查(如果以上方法都无效)

  • 检查项目有没有被移动过,或者是否存在符号链接(软链接)指向不同盘符的目录,这种跨盘符的链接很容易导致Gradle路径识别异常
  • 尝试创建一个全新的Flutter项目,只添加wakelock_plus依赖,看看能不能正常构建,如果新项目没问题,那大概率是原项目的Gradle配置或者缓存有特殊问题,可以逐步迁移配置排查

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 14:49:50