Hi Eric,

This is great!  Thanks!  I tried it, and it seems to work as expected.  I used it to define in my .emacs file a new java-root project with a name, a project file (just a README), a srcroot, and a classpath.   It seemed to work, insofar as all of the Java imports (i.e., "includes") were identified, and I could navigate to the ones that are file-based.  semantic-ia-complete-symbol still doesn't work on Java local variables, but I didn't expect this EDE project to fix that.  A couple of additional comments:

* Yes, this is very useful.
* Could this be abstracted into a base class that ede/java-root and ede/cpp-root could extend from?
* A single srcroot won't be sufficient for many Java projects.  Alternatively, perhaps it could take a list, like classpath does.
* srcroot resolves relative to the EDE project root, but I think I had to put in fully-qualified absolute paths into the classpath list.  It would be nice if the elements of the classpath list were resolved relative to the EDE project root.