Depedency conflict between Titan-ES and Neo4j when using Blueprints

46 views
Skip to first unread message

Austin Sharp

unread,
Dec 8, 2014, 11:38:32 AM12/8/14
to bluepri...@googlegroups.com
Hi all,

I'm working in a project that leverages Blueprints pretty heavily. We haven't yet settled on a specific Graph DB provider and appreciate the ability to swap between them, particularly Titan and Neo4j, while we're still considering both.

Recently we added ElasticSearch indexing to Titan, but this led to a problem. Our project has dependencies on both Titan and Neo4j now, but adding the new dependency on Titan-ES led to a conflict. Titan-ES depends on Lucene 4.x, and Neo4j depends on Lucene 3.x. Before adding ES, we were running unit tests on both Titan and Neo4j graphs to ensure that we remained compatible via Blueprints with multiple graph backends; now it appears we can't do this.

Has anyone run into this problem before? Any advice or ideas on resolving the Lucene version conflict? We're using Maven for our dependencies, if any Maven wizards have ideas to try.

Thanks,
Austin

Austin Sharp

unread,
Dec 8, 2014, 12:44:19 PM12/8/14
to bluepri...@googlegroups.com
(Fixing title, sorry.)

Austin Sharp

unread,
Dec 10, 2014, 5:46:22 PM12/10/14
to bluepri...@googlegroups.com
For posterity: found a solution. We now use the Maven Shade plugin to 'shade' (i.e. rename) Neo4j's Lucene 3 dependencies in the project that depends on Neo4j, and then the project that uses Blueprints can pull in both our Neo4j-dependent project as well as Titan-ES.

On Monday, December 8, 2014 9:44:19 AM UTC-8, Austin Sharp wrote:
(Fixing title, sorry.)
Reply all
Reply to author
Forward
0 new messages