Home | About | Sematext search-lucene.com search-hadoop.com
 Search Lucene and all its subprojects:

Switch to Threaded View
Lucene >> mail # dev >> Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]


Copy link to this message
-
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]
>
> 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.

> I'm assuming trunk does not suffer from this issue?
>
> Right, the official v3.5.0 carrot2-core POM includes the simple-xml
> dependency, while the Solr version (at
> solr/contrib/clustering/lib/solr-carrot2-core-pom.xml.template) does not (or
> did not, until you added it a few minutes ago).
>
> > 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'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.

S.