Cursor 与 Android Studio 联调时 R.jar 删除失败(Windows 文件锁)

本文说明在 Windows 上双 IDE 开发时,compileDebug 等任务报错 无法删除 / 覆盖 R.jar 的原因、如何复现、如何定位与如何解决。


1. 问题描述

Cursor 中编辑代码后,切换到 Android Studio 运行或构建工程时,Gradle 可能失败,典型日志包含:

  • 删除或覆盖 项目吗\build\intermediates\...\R.jar 失败
  • 提示文件被占用、访问被拒绝等(与业务代码无关)

表象: 在 Android Studio 中重试 Sync / Run 往往无效;关闭 Cursor 后 再在 Android Studio 中构建即可成功。


2. 根因概要

在 Windows 上,失败常见有两类 不同的 占用者:

占用进程 常见来源 gradlew --stop 是否有效
Gradle Daemon / Worker 在 Cursor 集成终端或其他终端执行过 gradlew,后台 Java 仍持有 build 下文件 通常有效
Cursor 的 Kotlin Language Server(java.exe) 扩展 fwcd.kotlin 拉起的语言服务进程,按类路径读取 build 中的 R.jar 并长时间占句柄 无效(需停语言服务或关 Cursor)

此前已通过 资源监视器 → 关联的句柄 搜索 R.jar,并结合 PowerShell 查询确认:占用 R.jarjava.exe 其父进程为 cmd.exe,命令行指向:

%AppData%\Cursor\User\globalStorage\fwcd.kotlin\langServerInstall\...

Kotlin 插件(fwcd)的语言服务 导致锁文件,而非 Gradle 本身。

4. 诊断方法

4.1 谁占用了 R.jar

  1. Win + R → 输入 resmon → 打开 资源监视器
  2. 切到 CPU 选项卡 → 关联的句柄 搜索框输入 R.jar
  3. 记下占用进程的 名称PID(常见为 java.exe)。

4.2 判断是 Gradle 还是 Cursor Kotlin 语言服务

在 PowerShell 中(将 15464 替换为实际 PID):

Get-CimInstance Win32_Process -Filter "ProcessId=15464" |
  Select-Object Name, ProcessId, ParentProcessId, CommandLine

查看 ParentProcessId,再查父进程:

Get-CimInstance Win32_Process -Filter "ProcessId=<ParentProcessId>" |
  Select-Object Name, ProcessId, CommandLine
  • CommandLine 中含 GradleDaemongradleGradleWorkerMain 等 → 多为 Gradle 相关。
  • CommandLine 中含 fwcd.kotlinlangServerInstall.cursor 用户目录 → Kotlin 语言服务(Cursor) 占用。

5. 解决方案

针对 fwcd.kotlin 语言服务(与本仓库现象一致时推荐)

  • 在 Cursor 中打开扩展视图,找到 Kotlin(发布者 fwcd)。
  • 选择 Disable (Workspace)仅当前工作区禁用,避免在本 Android 工程中启动会锁 R.jar 的语言服务。
  • 日常编译与运行以 Android Studio 为主;Cursor 用于编辑时,若无需完整 Kotlin LS,工作区禁用通常无副作用冲突。

若必须保留该扩展,可在从 Cursor 切到 Android Studio 做完整构建前 退出 Cursor(已验证可释放句柄)。

6. 小结

项目 说明
问题 Windows 下 R.jar 无法删除/覆盖,导致 Gradle 失败。
常见真凶之一 Cursor fwcd.kotlin 语言服务的 java.exe 长期占用 build 内的 R.jar
与「关 Cursor 就好」的关系 退出 Cursor 会结束该语言服务进程,句柄释放,Android Studio 即可正常构建。
推荐操作 本仓库在 Cursor 中 工作区禁用 fwcd Kotlin;Gradle 侧切换 IDE 前执行 gradlew --stop
Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐