Sean Owen created MAHOUT-1338:
---------------------------------
Summary: Reduce mahout-integration transitive dependencies to
avoid JAR hell, version conflicts
Key: MAHOUT-1338
URL: https://issues.apache.org/jira/browse/MAHOUT-1338
Project: Mahout
Issue Type: Improvement
Affects Versions: 0.8
Reporter: Sean Owen
Assignee: Sean Owen
Priority: Minor
mahout-integration contains bits of client and connector code for a lot of
projects, like Lucene, Cassandra, MongoDB, etc. As such, its transitive
dependencies in Maven pull in quite a lot.
Most of these are unnecessary for any particular user, since probably at most
one client/package is of interest. In fact, mahout-integration is not used by
most users at all.
In the worst case, it causes actual version problems when trying to package up
the transitive dependencies of something depending on Mahout.
I suggest several changes along these lines, all of which are represented in
the attached patch:
1. Remove direct lucene-core and cassandra-all dependencies, as they are not
necessary
2. Mark all dependencies like hector, mongodb, etc as optional in Maven
3. In fact, mark mahout-examples, mahout-buildtools and mahout-integration as
optional with respect to the overall project.
4. Bonus: update Cassandra client version to pull in slightly newer deps
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira