如何将字符串转换为IJavaProject类型?

我正在开发一个插件。在这里我把项目作为文本框的输入,这是一个字符串,但它必须在继续之前转换为IJavaProject类型。 我怎样才能做到这一点 ?

谢谢

如果projectName不存在,那么IProject (它只是一个句柄)将为null。 IJavaProject也将为null …所以我不建议使用beny23的解决方案 。

JavaCore.create(IProject)的javadoc声明,“此时没有检查此项目的存在或java性质”。

请参阅此主题以从头开始以编程方式创建Java项目。 提取

 final IJavaProject javaProject = JavaCore.create(project); final IProjectDescription projectDescription = workspace.newProjectDescription(projectName); projectDescription.setLocation(null); project.create(projectDescription, new SubProgressMonitor(progressMonitor, 1)); 

您可以检查是否实际创建了:

 IJavaProject.getUnderlyingResource().exists(); 

另请参阅此线程作为Java项目创建的另一个代码示例。

该线程也创建了项目,即使它们的性质比Java更完整。

以下应该有效

 IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName); IJavaProject javaProject = JavaCore.create(project);