Windows下Flutter开发AR应用报错:Cannot invoke method afterEvaluate() on null object
解决Flutter AR开发中插件找不到及afterEvaluate空对象错误
错误现象
Plugin project :permission_handler_android not found. Please update settings.gradle. Plugin project :geolocator_android not found. Please update settings.gradle. Plugin project :path_provider_android not found. Please update settings.gradle. Plugin project :ar_flutter_plugin not found. Please update settings.gradle. FAILURE: Build failed with an exception. ### 出错原因: 配置项目':app'时出现问题。 Cannot invoke method afterEvaluate() on null object
问题根源
settings.gradle未配置Flutter插件自动加载逻辑,导致依赖的Android端插件无法被Gradle识别- 可能存在Flutter SDK路径配置异常或项目结构不匹配的情况
解决方案
1. 修正settings.gradle配置
替换现有内容为以下代码,确保Flutter自动引入所有依赖插件:
pluginManagement { def flutterSdkPath = { def properties = new Properties() file("local.properties").withInputStream { properties.load(it) } def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath } settings.ext.flutterSdkPath = flutterSdkPath() includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") repositories { google() mavenCentral() gradlePluginPortal() } } // 新增:让Flutter自动加载所有插件项目 apply from: "${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle/app_plugin_loader.gradle" include ':app'
2. 检查local.properties中的Flutter SDK路径
打开local.properties文件,确认flutter.sdk指向正确的本地路径(Windows系统路径用双反斜杠或斜杠):
flutter.sdk=C:\\flutter
3. 验证app/build.gradle中的Flutter源路径
检查flutter块的source路径是否匹配项目结构,标准Flutter项目中应为:
flutter { source '../' // 指向Flutter项目根目录 }
若你的android文件夹在更深层级,需调整路径确保指向正确的Flutter根目录。
4. 清理缓存并重新构建
依次执行以下命令:
flutter clean flutter pub get cd android gradlew clean gradlew build
5. 检查ar_flutter_plugin兼容性
确认pubspec.yaml中ar_flutter_plugin版本与你的Flutter版本兼容,建议使用最新稳定版,同时保证minSdkVersion≥24(你的配置已满足)。
内容的提问来源于stack exchange,提问作者Md. Asad Mondall
相关产品推荐
相关产品推荐

