如何从Eclipse插件获取包资源管理器中的选定节点?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (47)

我正在编写一个Eclipse命令插件,并希望在包资源管理器中检索当前选定的节点。我希望能够从返回的结果中获得所选节点所在的文件路径(即c:\ eclipse \ test.html)

我该怎么做呢 ?

提问于
用户回答回答于

代码将如下所示:

IWorkbenchWindow window =
    PlatformUI.getWorkbench().getActiveWorkbenchWindow();
ISelection selection = window.getSelectionService().getSelection("org.eclipse.jdt.ui.PackageExplorer");

你可以像这个LuaFileWizardAction类一样在Action中查看这个例子。

用户回答回答于

你可以通过PlatformUI获取它。

然后,获取Package Explorer并将其转换为IStructuredSelection:

IStructuredSelection structured = (IStructuredSelection) service
            .getSelection("org.eclipse.jdt.ui.PackageExplorer");

从那里,你可以得到IFile:

IFile file = (IFile) structured.getFirstElement();

要获得完整的路径,:

IPath path = file.getLocation();

然后你可以使用它来获得文件的真正完整路径:

System.out.println(path.toPortableString());

扫码关注云+社区

领取腾讯云代金券