我为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;
}
}
提前致谢
答案 0 :(得分:2)
您应该使用JDT API来获取CompilationUnit:
ICompilationUnit cu = JavaCore.create(file);
然后使用此CompilationUnit对象来设置setSelection:
ISelection selection = new StructuredSelection(cu);
顺便说一下,为什么你要自己开发这个功能呢? Ctrl + Sihft + T,您可以打开一个对话框来搜索类并在编辑器中打开它。包浏览器有一个“链接编辑器”工具栏项,可以在活动编辑器中自动选择类。