"Could not delete path" "build/generated/source/r" 下的各种文件夹
"Could not delete path" on various folders under "build/generated/source/r"
在过去的几个月里,我一直在为“build/generated/source/r”文件夹中的文件夹(确切的文件夹更改)收到零星的、移动的构建时错误“无法删除路径”。例如:
如果我查看构建文件夹,我可以看到
- 存在违规文件夹
- 违规文件夹是"r"文件夹下的第一个文件夹
- 有问题的文件夹是空的
- 存在后续文件夹,每个文件夹包含 1 个文件:R.file
例如,如果有问题的文件夹是“localbroadcastmanager”:
如果我再次尝试构建(Build,Make Project),它会成功删除有问题的文件夹,以及几个后续文件夹。然后它会(经常)遇到文件树中“稍后”另一个文件夹的问题。
如果我继续尝试构建,它最终会成功,有时会失败 ~20 次。
如果我手动删除“构建”文件夹(在 Android Studio 中,或通过文件资源管理器),下一个构建过程将顺利完成。不幸的是,每次构建迭代都会产生大量开销。
我的理论是 gradle 构建任务正在递归删除“source/r”下的结构。对于每个文件夹,删除文件夹(R.java)的内容,然后删除文件夹。有时在文件删除完成之前就开始删除文件夹,导致文件夹被锁定。
系统详情
- Windows10
- Android Studio 3.1.4
- 防病毒:趋势科技网络安全专家 12.0
我尝试过的事情
- Android工作室
- 构建、清理项目
- 无效Caches/Restart
- 删除 "build" 文件夹(可行,但不是可行的解决方案)
- 防病毒(趋势科技)
- 已将 "build" 文件夹添加到 "Exception List"
- 禁用防病毒
- 使用资源监视器和进程资源管理器查看其他进程是否已锁定文件夹
- 此处发布的尝试过的建议:Whosebug post: Could not delete path
我明白了。我使用备份工具 (Genie Timeline Home 2017)。该工具的工作原理是持续监控存储集中指定的文件,并定期(约每 6 小时)制作最近更改的快照。
显然,当删除文件夹的内容,然后删除文件夹时,监控存在某种间歇性同步问题。从存储集中删除 "build" 文件夹解决了问题。
我使用 Genie Timeline 很多年了,只是最近几个月才遇到这个问题。不确定发生了什么变化。
我一次又一次地面临同样的问题。每次我删除 Build 文件夹时,我都可以成功构建应用程序,下次显示相同的问题。所以我做了以下对我有用的事情
- 从您的应用程序目录中删除 "build" 文件夹
- 必须构建 -> 生成项目 (ctrl+F9)
- Build->Clean & Build->Rebuild project creates new Build Folder
现在必须成功构建应用程序。如果没有执行步骤 4
- 文件 -> 使现金无效并重新启动。这将解决您的问题
在过去的几个月里,我一直在为“build/generated/source/r”文件夹中的文件夹(确切的文件夹更改)收到零星的、移动的构建时错误“无法删除路径”。例如:
如果我查看构建文件夹,我可以看到
- 存在违规文件夹
- 违规文件夹是"r"文件夹下的第一个文件夹
- 有问题的文件夹是空的
- 存在后续文件夹,每个文件夹包含 1 个文件:R.file
例如,如果有问题的文件夹是“localbroadcastmanager”:
如果我再次尝试构建(Build,Make Project),它会成功删除有问题的文件夹,以及几个后续文件夹。然后它会(经常)遇到文件树中“稍后”另一个文件夹的问题。
如果我继续尝试构建,它最终会成功,有时会失败 ~20 次。
如果我手动删除“构建”文件夹(在 Android Studio 中,或通过文件资源管理器),下一个构建过程将顺利完成。不幸的是,每次构建迭代都会产生大量开销。
我的理论是 gradle 构建任务正在递归删除“source/r”下的结构。对于每个文件夹,删除文件夹(R.java)的内容,然后删除文件夹。有时在文件删除完成之前就开始删除文件夹,导致文件夹被锁定。
系统详情
- Windows10
- Android Studio 3.1.4
- 防病毒:趋势科技网络安全专家 12.0
我尝试过的事情
- Android工作室
- 构建、清理项目
- 无效Caches/Restart
- 删除 "build" 文件夹(可行,但不是可行的解决方案)
- 防病毒(趋势科技)
- 已将 "build" 文件夹添加到 "Exception List"
- 禁用防病毒
- 使用资源监视器和进程资源管理器查看其他进程是否已锁定文件夹
- 此处发布的尝试过的建议:Whosebug post: Could not delete path
我明白了。我使用备份工具 (Genie Timeline Home 2017)。该工具的工作原理是持续监控存储集中指定的文件,并定期(约每 6 小时)制作最近更改的快照。
显然,当删除文件夹的内容,然后删除文件夹时,监控存在某种间歇性同步问题。从存储集中删除 "build" 文件夹解决了问题。
我使用 Genie Timeline 很多年了,只是最近几个月才遇到这个问题。不确定发生了什么变化。
我一次又一次地面临同样的问题。每次我删除 Build 文件夹时,我都可以成功构建应用程序,下次显示相同的问题。所以我做了以下对我有用的事情
- 从您的应用程序目录中删除 "build" 文件夹
- 必须构建 -> 生成项目 (ctrl+F9)
- Build->Clean & Build->Rebuild project creates new Build Folder
现在必须成功构建应用程序。如果没有执行步骤 4
- 文件 -> 使现金无效并重新启动。这将解决您的问题