0

我正在为 Eclipse 开发一个提供 Xtext-project 指标的插件。

我应该在两个层次上介绍:Xtext 文件和所有项目。

为了获取有关文件的详细信息,我使用以下代码来提取 Xtext 文件:

IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart activeEditor = page.getActiveEditor();
if (activeEditor instanceof XtextEditor) {
    XtextEditor xtextEditor = (XtextEditor) activeEditor;
    xtextEditor.getDocument().readOnly((XtextResource resource) -> {    
     ResourceHandler.resource = resource;
      });

它适用于当前打开的 Xtext 文件。

现在我想获取当前 eclipse 项目中的所有 Xtext 文件。

我尝试了以下代码,但它似乎不起作用:

IWorkbench workbench = PlatformUI.getWorkbench();
IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
for (IWorkbenchWindow window : windows) {
  IWorkbenchPage[] pages = window.getPages();
  for (IWorkbenchPage page : pages) {
    IEditorPart activeEditor = page.getActiveEditor();
    if (activeEditor instanceof XtextEditor) {
      XtextEditor xtextEditor = (XtextEditor) activeEditor;
      xtextEditor.getDocument().readOnly((XtextResource resource) -> {
        resourceList.add(resource);

对我来说最好的解决方案是获取 XtextResource 的列表。

谢谢。

4

0 回答 0