/** * creates a java project with the specified name and additional project natures * * @param projectName * @param additionalNatures * @return a new java project * @throws CoreException */ public static IJavaProject createJavaProject(String projectName, String[] additionalNatures) throws CoreException { IProgressMonitor monitor = new NullProgressMonitor(); IProject project = createProject(projectName, monitor); if (!project.hasNature(JavaCore.NATURE_ID)) { addNatureToProject(project, JavaCore.NATURE_ID, monitor); } if (additionalNatures != null) { for (int i = 0; i < additionalNatures.length; i++) { addNatureToProject(project, additionalNatures[i], monitor); } } IJavaProject jproject = JavaCore.create(project); jproject.setOutputLocation(getDefaultProjectOutputLocation(project), monitor); jproject.setRawClasspath(new IClasspathEntry[0], monitor); addContainerEntry(jproject, JavaRuntime.newDefaultJREContainerPath()); return jproject; }