lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steven A Rowe <sar...@syr.edu>
Subject RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]
Date Fri, 20 May 2011 19:20:36 GMT
On 5/20/2011 at 2:58 PM, Stanislaw Osinski wrote:
> > The jar checked into SVN, both on trunk and on branch_3x,
> > is solr/contrib/clustering/lib/simple-xml-2.3.5.jar, which
> > means that the Ant build is using this older version on
> > both branches - shouldn't this also be upgraded to 2.4.1?
>
> In fact, Solr clustering plugin just needs a number of
> annotations from that JAR to compile, and these didn't
> change, so 2.3.5 should do the job just fine.

While it doesn't appear to be a problem in this particular case, I'm very uncomfortable with
different dependency versions being used, depending on which build system you're using.  Since
the trunk version depends on v2.4.1 under Maven through the official carrot2-core POM, I think
the only option here is to upgrade this dependency for the Ant build in both branches.  If
you don't want to do it, I will.

> > > One more thing: SimpleXML is required during compilation
> > > (annotations), but it's not needed when running clustering
> > > within Solr. So I think a dependency with the "compile"
> > > scope should do too.
> >
> > I think "provided" scope is the one we want here, since we
> > want to exclude it as a transitive dependency (just like the
> > servlet-api jar):
> >
> > <http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope>
>
> Good point! I've just made that change locally and it turns out
> that "provided" is not transitive, so we'd need to add the
> dependency to solr-clustering POM (instead of Carrot2's).

I hadn't thought of that, but you're absolutely right!

> I'm fine with either solution (keeping SimpleXML in Carrot2 POM
> with the default scope or in solr-clustering with provided scope),
> though I'm assuming the latter will save the consumers one JAR
> in their classpaths. Just let me know which one you'd prefer.

I'm not sure - I'll leave it up to you - but I think consistency is important, and the trunk
version under Maven does the former, as specified by the official carrot2-core POM.

Steve

Mime
View raw message