Bug 28547 Automatic detection of source folders doesn't work
Build 20021216 1. Create folder d:\temp\test\src\p 2. Create file X.java in d:\temp\test\src\p: package p; public class X { } 3. In a fresh workspace, create new Java project 4. Uncheck use default project contents, and point to d:\temp\test 5. Press Finish Observe: You get an error dialog saying that src/P [in Test] does not exist. The problem is that the NewProjectWizard is visiting the tree before it adds the Java nature to the project. It then asks the compilation unit /Test/src/p/X.java for its package declaration. This throws a JavaModeException since the project is not a Java project.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/NewProjectCreationWizardPage.java
IResourceVisitor visitor= new IResourceVisitor() {
					public boolean visit(IResource resource) throws CoreException {
						return doVisit(resource, sourceFolders);
					}
				};
				project.accept(visitor);
				monitor.worked(1);
								
				IClasspathEntry[] entries= null;
				IPath outputLocation= null;
				
				if (!sourceFolders.isEmpty()) {
					int nSourceFolders= sourceFolders.size();
					IClasspathEntry[] jreEntries= PreferenceConstants.getDefaultJRELibrary();
					entries= new IClasspathEntry[nSourceFolders + jreEntries.length];
					Iterator iter = sourceFolders.iterator();
					for (int i = 0; i < nSourceFolders; i++) {
						entries[i]= JavaCore.newSourceEntry((IPath) iter.next());
					}
					System.arraycopy(jreEntries, 0, entries, nSourceFolders, jreEntries.length);
					
					IPath projPath= project.getFullPath();
					if (nSourceFolders == 1 && entries[0].getPath().equals(projPath)) {
						outputLocation= projPath;
					} else {
						outputLocation= projPath.append(PreferenceConstants.getPreferenceStore().getString(PreferenceConstants.SRCBIN_BINNAME));
					} 				
					if (!JavaConventions.validateClasspath(JavaCore.create(project), entries, outputLocation).isOK()) {
						outputLocation= null;
						entries= null;