Flutter运行报错:flutter_html_to_pdf依赖Kotlin Gradle版本过低
问题原因
你根目录build.gradle里配置的Kotlin版本是全局默认值,但flutter_html_to_pdf这个第三方插件自身的构建配置中硬指定了1.3.50版本的Kotlin Gradle插件,导致构建时出现版本冲突——Android Gradle插件要求Kotlin版本≥1.5.20,但插件引入了更低的版本。
解决方案
方案1:强制所有子项目使用统一Kotlin版本
在根目录build.gradle的subprojects块中添加配置,强制覆盖所有子模块(包括第三方插件)的Kotlin Gradle插件版本:
subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" // 添加以下配置 project.ext { set('kotlin.version', '1.9.22') } afterEvaluate { if (project.hasProperty("android")) { android { compileSdkVersion 34 // 可根据你的项目调整,建议使用匹配Gradle版本的SDK buildToolsVersion "34.0.0" } } // 强制替换Kotlin插件版本 configurations.all { resolutionStrategy.eachDependency { details -> if (details.requested.group == 'org.jetbrains.kotlin' && details.requested.name.contains('kotlin-gradle-plugin')) { details.useVersion "1.9.22" } } } } }
同时注意你的Android Gradle插件版本(com.android.tools.build:gradle:4.1.0)比较旧,建议升级到和Kotlin版本匹配的版本,比如Kotlin 1.9.22对应Gradle插件7.4.0+,可以修改根build.gradle中的依赖:
classpath 'com.android.tools.build:gradle:7.4.2'
(修改后需要同步项目,可能还需要调整gradle-wrapper.properties中的gradle版本,比如7.4.2对应gradle 7.5版本)
方案2:升级flutter_html_to_pdf插件
查看pubspec.yaml中flutter_html_to_pdf的版本,尝试升级到最新版——新版插件可能已经更新了Kotlin依赖版本,解决兼容性问题。修改后执行flutter pub get同步依赖。
方案3:替换插件
如果上述方案都无效,可以考虑替换为其他支持高版本Kotlin的HTML转PDF插件,比如pdf_render或printing插件,根据项目需求选择合适的替代方案。
内容的提问来源于stack exchange,提问作者Go-At Solutions
相关产品推荐
相关产品推荐

