You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

旧Java项目新增Kotlin文件遇'Unresolved reference' R问题咨询

解决Android Studio 3.1中Java项目添加Kotlin文件后R无法自动导入的问题

我之前在AS 3.1的Java项目里加Kotlin文件时也踩过这个坑!明明手动导入com.your.package.R就能正常构建,但自动导入和代码补全就是不起作用,clean、重启AS都不管用。下面是我试过的有效解决方法,你可以挨个试试:

1. 检查并匹配Kotlin插件与AS版本

AS 3.1对Kotlin插件的兼容性要求比较严格,版本不匹配很容易导致自动导入失效:

  • 打开Settings -> Plugins,找到Kotlin插件查看版本。AS 3.1推荐搭配的Kotlin插件版本是1.2.30左右,尽量保证插件版本和AS版本适配。
  • 如果版本不对,点击Update更新插件后重启AS。

2. 确保项目build.gradle配置完整添加Kotlin支持

很多时候是项目没正确配置Kotlin环境,导致AS无法识别Kotlin文件中的R引用:

  • Project级build.gradle:检查是否添加了Kotlin的gradle插件依赖:
    buildscript {
        ext.kotlin_version = '1.2.30' // 和插件版本保持一致
        dependencies {
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        }
    }
    
  • Module级build.gradle:确认应用了Kotlin插件并添加标准库依赖:
    apply plugin: 'kotlin-android'
    
    dependencies {
        implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    }
    
    配置完成后点击Sync Now同步项目。

3. 开启Kotlin的自动导入开关

AS的自动导入设置可能没针对Kotlin开启:

  • 打开Settings -> Editor -> General -> Auto Import
  • 在Kotlin区域,勾选Add unambiguous imports on the fly和Optimize imports on the fly (for current project)
  • 同时检查Exclude from import and completion列表,确保没有误加你的项目包名。

4. 彻底清除AS缓存

普通clean&build可能没清干净Kotlin相关缓存,试试更彻底的方式:

  • 点击File -> Invalidate Caches / Restart
  • 在弹出窗口选择Invalidate and Restart,等待AS重启并重建缓存。

5. 核对Kotlin文件的包名

确保Kotlin文件的包名和同模块下的Java文件包名一致,包名不匹配会导致AS无法自动关联到正确的R文件。

一般做完以上步骤,R的自动导入和代码补全就能恢复正常了。

内容的提问来源于stack exchange,提问作者anoo_radha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:39:08