Flutter运行时Daemon编译失败错误求助(APK可正常运行)
问题解决建议
针对你遇到的Kotlin守护进程编译失败但APK仍可正常运行的问题,给出以下实用解决步骤:
1. 清理缓存并重启Gradle守护进程
执行以下命令彻底清理项目缓存并停止当前运行的Gradle守护进程:
flutter clean # macOS/Linux环境 ./gradlew --stop # Windows环境 gradlew.bat --stop
完成后重新运行flutter run,观察错误是否消失。
2. 调整Java编译版本兼容性
Java 21与部分旧版Kotlin/Gradle组合存在兼容性问题,在android/app/build.gradle中添加以下配置,强制使用Java 17进行编译:
android { compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' } }
3. 升级Kotlin版本至兼容版本
当前使用的Kotlin 1.9.20对Java 21的支持不够完善,建议升级到适配性更好的版本(如1.9.22或1.9.23),修改项目根目录下build.gradle的版本号:
buildscript { ext.kotlin_version = '1.9.23' // 其他配置保持不变 }
4. 临时禁用Gradle守护进程测试
如果以上方法无效,可临时禁用Gradle守护进程排查问题,在gradle.properties文件中添加:
org.gradle.daemon=false
重新构建项目,若错误不再出现,说明是守护进程相关的环境问题,后续可尝试重新启用守护进程并升级Gradle版本。
内容的提问来源于stack exchange,提问作者Emad Younan
相关产品推荐
相关产品推荐

