2

我为 Eclipse 开发了一个插件,用于在项目的弹出菜单中添加一个选项。此选项将按名称搜索类,然后在包资源管理器中突出显示该类。我对突出显示部分有疑问。我在文件夹中搜索类,所以我有类路径,但我不知道如何突出显示它。

我试过这个,但我没有得到任何结果:

String path = "D:\\Programs\\eclipse\\runtime-EclipseApplication\\tessssst\\src\\testClass.java";

    IPath iPath = new Path(path);
    IFile file = project.getFile(iPath);

    file = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(iPath);

    ISelection selection = new StructuredSelection(file);

    IViewReference[] views = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences();
    PlatformUI.getWorkbench().getActiveWorkbenchWindow()
    .getActivePage().resetPerspective(); 
    for(IViewReference view:views){
        if("org.eclipse.jdt.ui.PackageExplorer".equals(view.getId())){
            IViewPart pExplorer = view.getView(true);
            pExplorer.getViewSite().getSelectionProvider().setSelection(selection);
            break;
        }
    }

提前致谢

4

1 回答 1

2

您应该使用 JDT API 来获取 CompilationUnit:

ICompilationUnit cu = JavaCore.create(file);

然后使用这个 CompilationUnit 对象来设置选择:

ISelection selection = new StructuredSelection(cu);

而且,顺便问一下,你为什么要自己开发这个功能?Ctrl+Sihft+T,你可以打开一个对话框来搜索类并在编辑器中打开它。并且包资源管理器有一个“与编辑器链接”工具栏项,可以在活动编辑器中自动选择类。

于 2013-02-05T03:02:43.800 回答