我有一个 ICompilationUnit 并尝试找出它属于哪个工作集,或者它是否有一个工作集。我查看了 ICompilationUnit 具有的不同方法,但是我没有找到任何有帮助的方法。有人有想法吗?
最佳答案
一个编译单元可以是 0 个、1 个或多个工作集的成员。您必须搜索工作集列表,看看哪些工作集包含它。
获取工作集:
IWorkingSetManager manager = PlatformUI.getWorkbench().getWorkingSetManager();
IWorkingSet [] sets = manager.getAllWorkingSets();
对于每个工作集,获取成员:
IAdaptable [] members = set.getElements();
成员可以有多种,ICompilationUnit 实例
可能适用于某些成员,或者您可能需要适应:
ICompilationUnit unit = (ICompilationUnit)member.getAdapter(ICompilationUnit.class);
注意:getAdapter
调用的确切语法因 Eclipse 版本而异,因为在 4.5 中添加了泛型支持。
关于java - Eclipse 插件开发找出 CompilationUnit 属于哪个工作集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34417197/