Grant Ingersoll wrote:
I was wondering what people thought of the following things that have
been bothering me, off and on, for a while.
1. Let's bring SolrJ into the core and have, as part of the release
packaging, a target that builds a standalone SolrJ jar for
distribution. Right now, we have circular dependencies between the
core and SolrJ such that I think it makes it painful to startup a
project in Eclipse or IntelliJ which thus makes it just that little
bit more difficult for new people to understand and contribute to
Solr. Besides, SolrJ is used by distributed search and is thus "core"
+1. I setup an eclipse project yesterday and it took me a while to
figure out that I had to add src/java, src/webapp/src,
client/java/solrj/src, lib, client/java/solrj/lib and two test folders
to the build path. To make it work I also had to download and add
jetty.jar and jetty-util.jar to the classpath.
2. Likewise, let's refactor the appropriate servlet dependencies such
that it is in the core lib, but excluded from packaging, and then
utilized/copied out to the example where needed. I think these are
just the servlet apis used by the webapp part of the code.
The goal of both 1 and 2 is to have the core only depend on the lib
directory for dependencies such that people need only point their IDE
at the core/lib directory to get up and compiling/contributing, etc.
I also think we could stand to simplify the example directory quite a
bit. Not quite sure what to do there just yet. While the original
"example" is still pretty easy to use, I think it's confused by the
proliferation (of which I am guilty) of other "examples" that are
thrown into the directory.
Thoughts?
Cheers,
Grant