Android Studio提示无脚本插件加载,Kotlin应用编译失败如何解决?
问题描述
之前运行正常的Kotlin Android应用,仅修改了业务逻辑(未改动任何构建配置类的核心设置),现在编译时突然报错。在Android Studio 2024.1.2(Koala)及升级至2024.2.1(Ladybug)后,问题依然存在,具体提示如下:
警告:default scripting plugin is disabled: The provided plugin org.jetbrains.kotlin.scripting.compiler.plugin.ScriptingCompilerConfigurationComponentRegistrar is not compatible with this version of compiler
错误:unable to evaluate script, no scripting plugin loaded
Process finished with exit code 1
本人从未手动配置过ScriptingCompilerConfigurationComponentRegistrar插件,也无法在IDE设置中找到相关信息,请问该错误的含义是什么,如何修复?
错误含义
这个错误的核心是Kotlin编译器的脚本插件与当前使用的编译器版本不兼容,导致默认脚本插件被禁用,最终无法解析或执行构建过程中用到的Kotlin脚本(比如项目中的.kts构建脚本)。即便你没手动配置过这个插件,Android Gradle插件(AGP)或依赖的第三方库也可能自动引入相关依赖,当Kotlin版本与AGP/其他依赖版本不匹配时,就会触发这种兼容性冲突。
修复方案
- 对齐Kotlin与AGP版本:打开项目根目录的
build.gradle.kts(或build.gradle),确保Kotlin插件版本与AGP版本匹配。比如AGP 8.3+对应Kotlin 1.9.20+,AGP 8.4+对应Kotlin 1.9.23+,按照官方版本映射调整即可。
示例配置(根目录build.gradle.kts):plugins { id("com.android.application") version "8.4.0" apply false id("org.jetbrains.kotlin.android") version "1.9.23" apply false } - 清理Gradle缓存:删除本地Gradle缓存目录(Windows路径:
C:\Users\<你的用户名>\.gradle\caches;macOS/Linux路径:~/.gradle/caches),然后在Android Studio中执行File > Invalidate Caches... > Invalidate and Restart,强制重新下载依赖并生成全新的构建配置。 - 排查第三方依赖冲突:检查项目中引入的第三方库(尤其是自定义Gradle插件、注解处理器类库),看是否存在依赖旧版本Kotlin脚本插件的情况。可以通过执行
./gradlew dependencies命令查看完整依赖树,找到冲突的依赖并排除,或者升级该库到兼容当前Kotlin版本的版本。 - 排查自定义脚本问题:如果项目中使用了自定义的
.kts脚本,尝试暂时替换为官方默认的构建脚本结构,排除脚本本身的语法或兼容性问题。
内容的提问来源于stack exchange,提问作者O. R. Mapper

