cp= JavaCore.getResolvedClasspathVariable(ClasspathVariablesPreferencePage.JDKLIB_VARIABLE);
cp= JavaCore.getResolvedClasspathVariable(cp.getPath());
	private void setJavaProjectProperties(List classPathEntries, IPath buildPath, IProgressMonitor monitor) throws CoreException {		if (!fCurrProject.exists()) {			fCurrProject.create(null);		}				if (!fCurrProject.isOpen()) {			fCurrProject.open(null);		}				// create java nature		if (!fCurrProject.hasNature(JavaCore.NATURE_ID)) {			CoreUtility.addNatureToProject(fCurrProject, JavaCore.NATURE_ID, null);		}		monitor.worked(1);				// create and set the output path first		if (!fWorkspaceRoot.exists(buildPath)) {			IFolder folder= fWorkspaceRoot.getFolder(buildPath);			CoreUtility.createFolder(folder, true, true, null);					}		monitor.worked(1);				fCurrJProject.setOutputLocation(buildPath, new SubProgressMonitor(monitor, 3));				int nEntries= classPathEntries.size();		IClasspathEntry[] classpath= new IClasspathEntry[nEntries];				// create and set the class path		for (int i= 0; i < nEntries; i++) {			CPListElement entry= ((CPListElement)classPathEntries.get(i));			IResource res= entry.getResource();			if ((res instanceof IFolder) && !res.exists()) {				CoreUtility.createFolder((IFolder)res, true, true, null);			}			classpath[i]= entry.getClasspathEntry();		}			monitor.worked(1);				fCurrJProject.setRawClasspath(classpath, new SubProgressMonitor(monitor, 3));		// attach source for libraries		for (int i= 0; i < nEntries; i++) {			CPListElement entry= ((CPListElement)classPathEntries.get(i));			IClasspathEntry cp= entry.getClasspathEntry();			if (cp.getEntryKind() == IClasspathEntry.CPE_VARIABLE) {				cp= JavaCore.getResolvedClasspathVariable(ClasspathVariablesPreferencePage.JDKLIB_VARIABLE);			}			if (cp != null && cp.getEntryKind() == IClasspathEntry.CPE_LIBRARY) {				attachSource(cp.getPath(), entry);			}		}		monitor.worked(1);	}