有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Eclipse插件开发:IFile删除和设置内容之前的侦听器?

我正在创建一组需要对xml进行编组和解编组的eclipse插件。所以我创建了自定义生成器来验证这些xml,每次更改或删除文件时都会执行这些xml。我让我的生成器在删除和更改事件中执行,但我的问题是,更改或删除后文件不存在,因此我无法取消对文件的打包

简而言之,我想在eclipse中验证xml是否以任何方式更改了其依赖文件。因此,我将需要新旧两种状态的资源。为此,我可能需要某种预删除或预更改IFile侦听器

有人能指引我正确的方向吗

谢谢


共 (1) 个答案

  1. # 1 楼答案

    使用org.eclipse.core.resources.IResourceChangeListener侦听工作区中资源的所有更改

    使用以下内容设置侦听器:

    ResourcesPlugin.getWorkspace().addResourceChangeListener(listener);
    

    当包含IResourceDelta的资源发生更改时,将为侦听器提供一个IResourceChangeEvent。delta可以描述对多个资源的更改

    如果使用keep history标志修改了IFile内容,则可以使用IFile.getHistory检索以前的文件内容