Java 在eclipse插件中获取两个iFile之间的差异

Java 在eclipse插件中获取两个iFile之间的差异,java,eclipse,eclipse-plugin,diff,Java,Eclipse,Eclipse Plugin,Diff,我正在编写一个eclipse插件,它会在文件被移动或重命名时发出通知。在eclipse中,当您选择移动或重命名文件时,可能会发生这种情况。有趣的是,例如,在重命名中,eclipse将删除旧文件并创建一个全新的文件 我可以访问旧文件和新文件: //grab each new and deleted file IFile oldFile = resourceParser.getDeletedFiles().get(i); IFile newFile = resourceParser.getNewFi

我正在编写一个eclipse插件,它会在文件被移动或重命名时发出通知。在eclipse中,当您选择移动或重命名文件时,可能会发生这种情况。有趣的是,例如,在重命名中,eclipse将删除旧文件并创建一个全新的文件

我可以访问旧文件和新文件:

//grab each new and deleted file
IFile oldFile = resourceParser.getDeletedFiles().get(i);
IFile newFile = resourceParser.getNewFiles().get(i);
问题是在某些情况下(例如重命名包),文件将被移动,并且文件的内容将更改为新包名的帐户


所以,我需要得到两个文件之间的差异列表。正如我所说,我可以访问这两个iFile(删除的和新的),但我想看看它们的内容有什么不同。是否有某种java diff工具可以生成一个简单的更改列表供我操作?

Eclipse
org.Eclipse.compare
提供了一种编写diff工具和编辑器的通用机制,这在中进行了描述


Eclipse的Java开发工具部分扩展了对Java的这种比较支持,但是代码在
org.Eclipse.jdt.ui.internal.ui.compare
包中,该包是internal,因此不是EclipseAPI的一部分,不应该使用它,再次感谢!你对实施差异有什么建议吗?我在看RangeDifferenticer和IRangeComparator,你会这样做吗?你知道我可以看的例子吗?你可以看
org.eclipse.compare.contentmergeviewer.TextMergeViewer