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

Android Studio Java转Kotlin后无法找到R资源类问题咨询

问题描述

从其他位置复制Java代码粘贴到Android Studio时,若选择同意IDE弹出的Java自动转Kotlin提示,转换完成后,当前文件内原本可以正常识别的所有R类资源引用(比如R.drawable、R.string)都会被标记为未解析状态。
问题截图

已尝试的临时处理方式

目前碰到这个问题时,可以通过以下操作临时绕过异常:

  • 先把转换生成的Kotlin代码全部复制出来
  • 按Ctrl+Z(macOS为Command+Z)连续撤销,直到文件里的R资源引用恢复正常解析
  • 把之前复制好的Kotlin代码重新粘贴到对应位置,这次粘贴不会触发R类解析异常

出问题的IDE版本:Android Studio Chipmunk 2021.2.1 Patch 1

修复方案

这个是Android Studio Kotlin插件的已知索引bug,自动粘贴转码流程执行完后没有触发R类的重索引流程,按以下优先级操作即可解决:

  1. Gradle同步修复
    直接点击顶部工具栏的「Sync Project with Gradle Files」(大象图标),等待项目同步完成,IDE会重新建立资源索引,R类引用会自动恢复,不需要反复撤销粘贴。
  2. 清除缓存重建索引
    如果同步Gradle后问题还存在,依次打开顶部菜单 File > Invalidate Caches...,勾选Clear file system cache and Local History后点击Invalidate and Restart,等IDE重启完成、全量索引建好后异常就会消失。
  3. 关闭高风险自动转码配置
    要是频繁碰到这个bug,可以直接关掉粘贴自动转Kotlin的提示:打开Settings > Editor > General > Smart Keys,找到Convert Java code to Kotlin on paste配置项,把默认的Ask改成No。后续需要把Java转成Kotlin时,手动选中Java代码,按快捷键Ctrl+Alt+Shift+K(macOS为Option+Shift+Command+K)触发转换即可,这个手动触发的转码流程不会触发R类索引异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 13:18:18