eclipse - 如何在资源树锁定时延迟对资源树的修改

标签 eclipse eclipse-plugin eclipse-rcp

我遇到了异常:

org.eclipse.core.internal.resources.ResourceException: The resource tree is locked for modifications.

经过一番搜索,我发现这是因为我试图向文件添加标记。当我收到文件更改的通知时,我正在这样做。因此,当我的修改代码被调用时,工作区仍处于通知过程的中间,并且不允许对资源树进行修改。

如何保存标记,以便稍后将它们添加到文件中,或者延迟此更改的另一种方法是什么?

最佳答案

您无法从资源增量事件处理程序修改资源树(如果可以的话,想象一下可能会出现完全困惑的情况)。据我所知,最常见的方法是安排作业并在作业的 run() 方法中进行修改。这意味着您需要记住想要进行的修改,以便可以在作业中完成这些修改。这也意味着您不能对资源树的状态做出太多假设,因为理论上,其他作业可能会在您的作业之前运行,从而对树进行更改。

关于eclipse - 如何在资源树锁定时延迟对资源树的修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12243926/

相关文章:

eclipse - 需要帮助来开始使用 Eclipse RCP

java - 将gradle项目导入eclipse出错

eclipse - 如何在 Eclipse 中使用 Antlr4 Ide 查看实时解析树?

css - 在 css/default.css 中为 Shell 设置背景颜色无效

java - Eclipse 插件 : Populating dynamically a menu with commands and corresponding handlers

java - 为什么 Eclipse 中的“问题” View 没有显示我的所有错误?

java - 单击通知时重新启动应用程序

java - 如何在 Eclipse RCP 应用程序的 View 中显示 Google map

java - 在 Eclipse RCP 应用程序中,您可以在您的pluginCustomization 文件中定义透视图吗?

java - 删除或禁用 RAP/RCP EditorPart 上显示的 "X"关闭按钮