Eclipse插件开发:使用项目的路径将项目添加到工作集中?

时间:2017-06-08 00:04:17

标签: eclipse eclipse-plugin eclipse-neon working-set

您好 我是一个eclipse插件开发新手,正在寻找让我开始特定项目的指针。

我正在尝试构建一个eclipse插件,它将自动从文本文件构建一个工作集,该文件文件只包含一个文件路径名列表。文件/项目不需要共享任何父目录。粗略的想法如下图所示:

Diagram of the plugin's goal

要求解决此任务。这是一个总体目标。为了实现这一目标,我想首先征服一些较小的目标。

考虑到这一点,这是我目前正在努力解决的较小目标:

在Eclipse中,如何提示用户输入单个文件的路径,然后将该文件添加到现有工作集中?

我不知道从哪里开始。我应该直接使用现有的org.eclipse.ui.workingSets扩展点吗?或者我应该使用其他扩展点的集合?如何将字符串转换为可以添加到工作集中的字符串?我是否编写直接修改workingsets.xml文件的代码?

即使有一个更简单的目标,我仍然对eclipse扩展选项的广泛性感到不知所措。可能有很多方法可以实现这样的东西,但我只需要一个开始。

非常感谢!

1 个答案:

答案 0 :(得分:1)

要操作工作集,请使用工作集管理器界面IWorkingSetManager。得到这个:

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

通过以下方式,您可以通过以下方式获得特定的工作:

IWorkingSet workingSet = manager.getWorkingSet("name");

工作集的内容是IAdaptable个对象的数组:

IAdaptable [] contents = workingSet.getElements();

通过添加到此数组并设置内容来添加内容:

IAdaptable [] newContents 

.... get new array with old contents + new contents

workingSet.setElements(newContents);

许多Eclipse对象实现IAdaptable,对于工作区中的文件,您将使用IFile。您可以使用ResourceSelectionDialog等对话框从工作区中选择资源。