【问题标题】:Android Studio can't delete files when compilingAndroid Studio 编译时无法删除文件
【发布时间】:2026-01-04 18:40:07
【问题描述】:

当我编译我的应用程序以便在模拟器上运行它时,Android Studio(版本 3.0 RC2)会报错,因为它无法删除我的项目文件夹中的 1.jar 文件。

这是错误信息:

Error:Execution failed for task ':app:transformClassesWithDesugarForDebug'.
> com.android.build.api.transform.TransformException: java.io.IOException: 
Could not delete path 'D:\ProgrammazioneOffline\ProjectFolder\app\build\intermediates\transform
 s\desugar\debug\1.jar'.

我发现清理项目会使其再次编译,但过一段时间又会报错。 我的项目并没有那么小,每次重建都需要很长时间(重建时大约需要 4 分钟,而正常工作时需要 30 秒)。

在问题出现之前,我已经格式化了我的电脑并更改了项目的路径。我是否忘记在某处更改对该项目的一些引用?

我在know问题中没有发现这个问题。

在此先感谢,并为我的英语不好感到抱歉。

编辑:我发现该文件正在被 java.exe 使用并通过 cmd 杀死它会使编译运行,但它不应该由 Android Studio 完成吗?

EDIT2:这是 firebase 插件,问题已解决,请参阅我接受的答案

【问题讨论】:

  • 你找到解决办法了吗?
  • 不,我每次编译前都会使用 CMD 杀死 java。很无聊
  • 你举报了吗?
  • 不,是 Android Studio 的问题还是 gradle 的问题?

标签: java android android-studio io compilation


【解决方案1】:

当您尝试重新编译时,您的 jar 是否仍在运行?

如果是这样你的系统不能删除是因为它正在被使用

【讨论】:

  • 是的,但是它是一个中间文件,Android Studio不应该在生成APK文件时释放它吗?仍然查看我的编辑
【解决方案2】:

尝试使用外部 jdk 而不是嵌入式 jdk。

【讨论】:

  • 仍在发生,现在在文件 10.jar 而不是 1.jar 上,无论如何谢谢
【解决方案3】:

另一个机会是暂时禁用脱糖功能并恢复使用 retrolambda,直到错误得到修复。

【讨论】:

  • 如果我每次需要编译时都通过 cmd 杀死 java.exe,我可以编译并运行我的应用程序。它很快,我不必禁用 Java 8。谢谢
【解决方案4】:

Google 团队意识到原因之一是 Firebase 性能插件。如果有,请删除它。

【讨论】:

    【解决方案5】:

    多次遇到这种情况,只需重建您的项目并检查 android studio 显示的错误消息并记住 android studio 要求删除的文件名,然后手动转到该文件,如:C/users/youruser/ androidstudioprojects/.../ 找到那个文件,然后手动删除,然后回到android studio,清理这个项目,这次就不会报错了....

    希望有帮助..

    【讨论】:

      【解决方案6】:

      现在看来问题已经解决了。将您的 firebase-perf 插件更新到版本 1.1.4+ ('com.google.firebase:firebase-plugins:1.1.4') 并将您的 firebase 依赖项更新到版本 11.6.0+。

      感谢任何回答问题的人。

      来源:https://issuetracker.google.com/issues/68316213

      【讨论】:

      • 不使用 firebase 仍然有这个问题。可能还有其他原因。
      • 哇,有了我在我的应用程序中使用的所有插件和依赖项列表,我永远不会说它是firebase-perf。更新到最新版本解决了这个问题。谢谢。
      • @Odys +1 - 我仍然有这个问题。
      【解决方案7】:

      只需打开项目位置。找到您没有删除的文件。如果您尝试删除该单个文件,则不会。所以只需复制所有其他不应删除的文件并删除您要删除的整个文件 例如:可绘制:Ob_photo //(我必须删除这个文件)因为文件名不应该是大写字母

      ic_photo2

      删除整个可绘制文件复制 ic_photo2

      【讨论】: