使用数据绑定清除项目错误:无法删除文件androidx.databinding.library.baseAdapters - setter_store.json

问题描述 投票:6回答:6

我使用数据绑定。有时我做出更改项目可能会被打破。然后我去Build - > Clean project&Re-Build项目。我得到一些奇怪的错误:

Unable to delete file: {path_to_project}\app\build\intermediates\data_binding_dependency_artifacts\debug\dataBindingMergeDependencyArtifactsDebug\out\androidx.databinding.library.baseAdapters--setter_store.json

每次我不知道如何修复它,因为我在清理或重建时遇到此错误。即使我使Invalidate缓存/重新启动问题也没有消失。

如果我尝试手动删除此文件,则会收到其他进程正在使用该文件的错误。然后我关闭项目并成功删除此文件。但是当我打开项目并构建它时,我得到了上面描述的相同错误。

我可以看到问题是关于数据绑定,但我不确定,因为我在StackOverflow上看到了来自其他用户的其他文件的相同问题。有时问题本身已经消失,但通常情况并非如此。也许问题是由于布局文件中的错误而发生的,但是如果构建日志中没有错误,如何找到它。

有没有人遇到这个错误?任何想法如何解决这种情况,而不是在未定义的时间范围内整个项目?

android android-studio android-databinding
6个回答
3
投票

我关闭Android Studio,删除app \ build文件夹,然后重新打开Android Studio。请注意,必须关闭Windows的所有AS实例才能删除构建文件夹。


2
投票

所以,问题仍然存在,但所有答案都没有解决。 Project没有编译是有原因的,通常是某种错误,如果你只是删除build文件夹(包含文件Android Studio无法删除),它将无法解决问题。

当您尝试编译项目时,您可能会在生成的文件(数据绑定,房间等)中收到许多错误。不幸的是,错误没有显示在通常的窗口中,但如果你扩展这个生成的文件有错误,你可能会看到真正的问题,你在更改与生成的文件相关的类时没有修复的错误。只需修复这些错误并再次编译项目。注意:您可能也应该查看警告。

但是,如果你已经有错误Unable to delete file,你将看不到生成的文件中的错误。您需要重新启动Android工作室(如果它没有帮助,您需要删除app \ build)并尝试编译您的项目。之后,您将在构建选项卡中找到生成的错误文件。

希望能帮助到你!


0
投票

尝试在gradle.properties中禁用守护进程和并行构建

org.gradle.daemon=false
org.gradle.parallel=false

0
投票

首先按照这4个步骤

  • 删除生成的文件(构建文件夹)
  • 清理你的项目(只需运行cmd命令 - > gradlew clean
  • 使缓存无效并重新启动Android Studio
  • 重启电脑

如果没有帮助,请尝试以下步骤

  • Gradle同步;
  • 安装Java JRE和Java SDK;
  • 重新安装最新版本的Android Studio
  • 回滚到以前的AS版本
  • 使缓存无效并重新启动Android Studio
  • 删除项目目录中的gradle和.gradle目录;
  • 删除目录中的.gradle目录;
  • 运行gradlew clean(只需运行cmd命令 - > gradlew clean

0
投票

我尝试了上面的大多数解决方案,但似乎没有找到它们工作。但是我这样做是为了让我的项目重新启动并运行。

我假设发生了这种情况,因为您正在使用dataBinding。浏览到应用程序gradle文件中的dataBinding部分

现在通过设置为false来禁用dataBinding。接下来,重建您的项目,您会发现有关处理在xml文件中缺少dataBinding的错误。

接下来通过此次设置为true来启用数据绑定。接下来,重建您的项目。

它本应该清除那个奇怪的错误。

请原谅我这个奇怪的解释,但我很想为stackoverflow做贡献。


0
投票

在Android Studio终端中输入以下命令。

gradlew --stop

© www.soinside.com 2019 - 2024. All rights reserved.