我使用数据绑定。有时我做出更改项目可能会被打破。然后我去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 Studio,删除app \ build文件夹,然后重新打开Android Studio。请注意,必须关闭Windows的所有AS实例才能删除构建文件夹。
所以,问题仍然存在,但所有答案都没有解决。 Project没有编译是有原因的,通常是某种错误,如果你只是删除build文件夹(包含文件Android Studio无法删除),它将无法解决问题。
当您尝试编译项目时,您可能会在生成的文件(数据绑定,房间等)中收到许多错误。不幸的是,错误没有显示在通常的窗口中,但如果你扩展这个生成的文件有错误,你可能会看到真正的问题,你在更改与生成的文件相关的类时没有修复的错误。只需修复这些错误并再次编译项目。注意:您可能也应该查看警告。
但是,如果你已经有错误Unable to delete file
,你将看不到生成的文件中的错误。您需要重新启动Android工作室(如果它没有帮助,您需要删除app \ build)并尝试编译您的项目。之后,您将在构建选项卡中找到生成的错误文件。
希望能帮助到你!
尝试在gradle.properties
中禁用守护进程和并行构建
org.gradle.daemon=false
org.gradle.parallel=false
首先按照这4个步骤
gradlew clean
)如果没有帮助,请尝试以下步骤
gradlew clean
)我尝试了上面的大多数解决方案,但似乎没有找到它们工作。但是我这样做是为了让我的项目重新启动并运行。
我假设发生了这种情况,因为您正在使用dataBinding。浏览到应用程序gradle文件中的dataBinding部分
现在通过设置为false来禁用dataBinding。接下来,重建您的项目,您会发现有关处理在xml文件中缺少dataBinding的错误。
接下来通过此次设置为true来启用数据绑定。接下来,重建您的项目。
它本应该清除那个奇怪的错误。
请原谅我这个奇怪的解释,但我很想为stackoverflow做贡献。
在Android Studio终端中输入以下命令。
gradlew --stop