Java 从另一个Eclipse视图在XText编辑器中侦听EObject更改

Java 从另一个Eclipse视图在XText编辑器中侦听EObject更改,java,eclipse,xtext,emf,ecore,Java,Eclipse,Xtext,Emf,Ecore,我想为当前XtextEditor中的文档创建一个Eclipse视图。要创建视图,我需要遍历由xtext从文档内容创建的EObject。我可以得到当前的编辑器,但我不知道如何得到EObject的 我假设DSL的EObject树是可用的,因为它是xtext内部使用的,我还假设它是用来填充eclipse大纲视图的 我原以为可以从编辑器中获得XtextResource,但当我获得该资源时,我只得到一个org.eclipse.core.internal.resources.File 有人知道如何获取编辑器

我想为当前XtextEditor中的文档创建一个Eclipse视图。要创建视图,我需要遍历由xtext从文档内容创建的EObject。我可以得到当前的编辑器,但我不知道如何得到EObject的

我假设DSL的EObject树是可用的,因为它是xtext内部使用的,我还假设它是用来填充eclipse大纲视图的

我原以为可以从编辑器中获得XtextResource,但当我获得该资源时,我只得到一个org.eclipse.core.internal.resources.File

有人知道如何获取编辑器正在使用的当前ECore模型的引用吗?

您可以使用

XtextEditor.getDocument().readOnly(IUnitOfWork)
请注意:您不能返回IUnitOfWork中的资源或内容


另一种可能是简单地将资源分别加载到resourceset中

awesome,谢谢您的回答。这是一个有点奇怪的api,但我已经解决了。