- Modify top-level build.xml to build contrib area.

- Implement javadoc w/ groups

- Add download of dependencies

- Add conditional hooks to allow build to succeed even without 3rd party dependencies

- migrate other sandbox pieces over to contrib

---------------------------

Notes from e-mail thread:
Here's my proposal:
  1. Move sandbox/contributions to src/contrib;
  2. Change build.xml to build, test & package sandbox packages too.
  3. Change sandbox build.xml's to build in a top-level build/contrib directory, and package into a top-level dist/contrib directory, so that no files are written in src/contrib.

Once this is done, then:

 "ant compile" will compile all core and contributed code, building something like:

    build/
      classes/  -- core classes
      contrib/
        highlighter/ -- highlighter classes
        ...

 "ant test" will test all core and contributed code

 "ant dist" will create something like:

      dist/
        lucene-XX.tar.gz
        lucene-src-XX.tar.gz
        lucene-XX.zip
        lucene-src-XX.zip
        contrib/
          highligher-XX.tar.gz
          ...

And so on.


Also, we should combine the javadoc into a single tree, with a "Core" group followed by a "Contrib" group:

http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/javadoc.html#group

As an example, Nutch does this for "Core" and "Plugin":

http://www.nutch.org/docs/api/overview-summary.html