Eclipse插件:查找所选项目的位置

3

我一直在尝试通过我的编辑器插件中的代码查找Eclipse中所选项目的位置,我已经取得了一些成功。但在某种情况下,当上一个会话中打开了使用编辑器的文件,并重新打开Eclipse时,如果没有打开和关闭该文件,我无法找到当前项目的位置,因为这种方法:Eclipse插件:如何获取当前选定项目的路径将不起作用。有什么建议吗?谢谢。

1个回答

1
Eclipse实际上没有“当前项目”的概念。每个视图都有一个当前选择,但大多数视图在会话之间不保存选择。
在编辑器中,您可能希望使用当前正在编辑的文件所属的项目。在编辑器中,您可以使用类似以下内容的东西:
IEditorInput editorInput = getEditorInput();

IFile file = (IFile)editorInput.getAdapter(IFile.class);

IProject project = file.getProject();

注意:如果您正在编辑不在工作区中的文件,则file可能为null。在最新版本的Eclipse中,您不需要对(IFile)进行转换。

我过去用过这种方法,但现在我正在尝试在编辑器被创建之前定位打开的文件,以便我可以根据用户定义的参数更改语法。谢谢您的回复,但这种方法在我的情况下不起作用。 - Forrest Smith
那么你实际上是在哪里尝试运行这段代码?不存在所谓的“当前项目”,大多数视图在会话之间不保存选择,因此你真的没有其他可以查看的东西。 - greg-449

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接