Eclipse PDE:如何以编程方式在 Package Explorer 中加载新项目?

Eclipse PDE: How to load a new project in Package Explorer programmatically?

我开发了一个 Eclipse 插件,它使用 INewWizard 通过项目创建向导创建一个新的自定义项目。

一旦用户输入信息并点击 'Finish',项目就在工作区内成功创建。问题是 Package Explorer 不会在 'Finish' 事件时加载这个新创建的项目。在最后一个向导页面的 performFinish() 下应该实现什么来自动加载 Package Explorer 中的项目?

如何以编程方式在 Package Explorer 中加载此类新创建的项目?

理想情况下,应使用 IProject.create 版本创建一个项目,该版本采用 IProjectDescriptor。但是,如果您以其他方式创建项目文件,您仍然需要使用 IProject 创建项目以告知 Eclipse。您可以使用类似的东西:

IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
IProject project = root.getProject(projectName);
if (!project.exists()) {
    project.create(monitor);
} else {
    project.refreshLocal(IResource.DEPTH_INFINITE, monitor);
}

// TODO add files

project.refreshLocal(IResource.DEPTH_INFINITE, monitor);