Eclipse Plugin Developement找出ICompilationUnit属于哪个workingSet

时间:2015-12-22 13:39:24

标签: java eclipse-plugin

我有一个ICompilationUnit并试图找出它属于哪个workSet,或者它是否有一个workSet。我已经看过ICompilationUnit的不同方法,但是我没有找到任何有用的方法。有没有人有想法?

1 个答案:

答案 0 :(得分:2)

编译单元可以是0,1或许多工作集的成员。您将不得不搜索包含它的工作集列表。

获取工作集:

IWorkingSetManager manager = PlatformUI.getWorkbench().getWorkingSetManager();

IWorkingSet [] sets = manager.getAllWorkingSets();

为每个工作集获取成员:

IAdaptable [] members = set.getElements();

会员可以是很多事情,instanceof ICompilationUnit可能适用于某些会员,或者您可能需要适应:

ICompilationUnit unit = (ICompilationUnit)member.getAdapter(ICompilationUnit.class);

注意:getAdapter调用的确切语法因Eclipse版本而异,因为4.5中添加了泛型支持。