添加pinput包后触发:smart_auth项目配置异常,未引入该包却报错
问题排查:添加pinput包后触发':smart_auth' Gradle错误
问题详情
- 运行环境:Flutter 3.3.10(Dart 2.18.6)
- 触发场景:添加pinput包后项目构建失败,移除pinput后恢复正常
- 未手动引入过smart_auth包
- 报错信息:
通知项目评估监听器失败。
无法为类型为org.gradle.api.Project的项目':smart_auth'获取未知属性'android'。
原因分析
pinput包存在间接依赖smart_auth的情况(属于依赖链传递引入),而smart_auth的Gradle配置存在问题:它的build.gradle中错误引用了android属性,但该模块可能未正确配置为Android Library类型,或是Gradle插件版本不兼容,导致构建时无法识别该属性。
解决方案
确认依赖来源
在项目根目录执行命令,查看smart_auth的依赖链路:flutter pub deps搜索
smart_auth,确认它是通过pinput的哪一层子依赖引入的。强制排除smart_auth依赖
在pubspec.yaml中修改pinput的依赖声明,添加排除规则:dependencies: pinput: ^x.x.x # 替换为你使用的pinput具体版本 exclude: - smart_auth注意:若pinput核心功能依赖smart_auth,此方法可能导致部分功能失效,需先验证版本兼容性。
升级pinput至最新稳定版
旧版本pinput可能依赖了存在配置问题的smart_auth版本,升级pinput到最新版,大概率已修复依赖链问题。检查Gradle配置兼容性
确认项目android/build.gradle中的Gradle插件版本与Flutter 3.3.10兼容;若android/settings.gradle中自动添加了smart_auth模块,可临时注释后尝试构建,验证是否为模块配置问题。
内容的提问来源于stack exchange,提问作者Devindra Hirabatti
相关产品推荐
相关产品推荐

