CodeBuddy 在 Kotlin 项目中突然失灵——代码补全不再弹出,右键菜单里的 AI 选项也消失得无影无踪——绝大多数情况下,是 IDE 没有正确识别 .kt 文件为 Kotlin 源文件。简单来说,就是文件类型与语言服务之间的绑定关系出现了问题,导致插件无法获取上下文解析器。这一类问题最好在项目刚打开、还未开始编码时就排查并解决,否则后续所有智能提示功能都会退化为基础文本匹配,使用体验会非常糟糕。
具体如何修复?只需按照以下步骤逐一检查并手动调整,顺序不宜错乱。
确认 Kotlin 语言服务已正常启用
先进入设置界面:Windows/Linux 用户通过 File → Settings → Languages & Frameworks → Kotlin;macOS 用户通过 Android Studio → Preferences → Languages & Frameworks → Kotlin。进入后查看右侧面板,如果显示“Kotlin is enabled for this project”,说明状态正常;如果出现灰底文字“Not configured”或面板为空,则表示 Kotlin 插件尚未被当前项目认可。
不必担心,点击右下角的“Configure Kotlin”按钮,选择当前模块并确认。IDE 会自动在模块级的 build.gradle.kts 中插入插件声明,并同步 Gradle 依赖。
但需要注意:如果项目使用的是 Groovy DSL(文件名为 build.gradle),此步骤会直接失败——CodeBuddy 的 Kotlin 语言服务仅支持 Kotlin DSL(文件名为 build.gradle.kts)。因此必须先将 build.gradle 重命名为 build.gradle.kts,再按照 Kotlin 语法重写文件内容。否则“Configure”按钮点击后无任何响应。
强制重建文件类型关联
通常情况下,Android Studio 通过文件后缀 .kt 来绑定 Kotlin 语言类型。但项目有时是从外部导入的,或者 .kt 文件是手动创建的,可能被错误地标记为“Plain Text”。这种情况需要手动纠正。
第一步:右键点击任意一个 .kt 文件 → “Override File Type” → 选择“Kotlin”。
第二步:进入 Settings → Editor → File Types,找到“Kotlin”这一项,在底部的“Registered Patterns”列表中点击 + 号,输入 *.kt(注意不是 *.kts)。
第三步:在同一页面往下滚动,找到“Plain Text”,检查其“Registered Patterns”列表中是否包含 *.kt——如果存在,选中它,点击 - 号将其删除。这一步很多人容易遗漏,结果新建的 .kt 文件依然被当作纯文本处理,CodeBuddy 完全无法正常响应。
验证 .kt 文件是否真正归属 Kotlin 语言上下文
完成上述修改后还需进行确认,确保语言服务已正确连接。以下有三种验证方法:
方法一:在任意 .kt 文件中输入 val a =,然后按下 Ctrl+Space(Windows/Linux)或 Cmd+Space(macOS)触发代码补全。如果弹出 kotlin.String、kotlin.Int 等标准库类型,说明绑定成功;如果只显示变量名历史记录或毫无反应,则表明绑定失败。
方法二:打开 Project 工具窗口,切换到“Project”视图(不要使用“Android”视图),展开 src/main/kotlin 目录,右键该目录 → “Mark as” → 确认已标记为“Sources Root”。若未标记,CodeBuddy 将无法识别该目录下的 .kt 文件,即使文件类型正确也无法提供代码补全。
方法三:在 .kt 文件顶部输入 package com.example,保存后查看左下角状态栏。如果显示“Kotlin | JDK 17”之类的信息,说明该文件已被 Kotlin PSI 解析器接管;如果显示“Plain Text”或空白,则 CodeBuddy 的语义补全、函数签名提示、DSL 链式调用等功能将全部失效。

按照上述流程操作后,CodeBuddy 基本能够恢复正常工作。核心要点只有两个:一是确保 Kotlin 语言服务已激活,二是确保 .kt 文件类型绑定正确。只要这两个关键点把控到位,后续开发过程便会顺畅无阻。
