[
https://issues.apache.org/jira/browse/SOLR-3760?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13455683#comment-13455683
]
Lance Norskog commented on SOLR-3760:
-------------------------------------
A more detailed explanation of the problem:
* lucene/analysis/X code in a jar.
* Lucene jar depends on third-party jar.
* lucene/analysis/X/ivy.xml downloads third-party jar.
* lucene/analysis/X build works.
* Solr factory in contrib/X depends on Lucene jar which depends on third-party
jar.
* Third-party jar is downloaded in Solr contrib/X/ivy.xml
** Thus, contrib/X build works because classpath is factory->lucene
jar->third-party jar.
However!
* Lucene jar is packed into Solr war.
* Lucene third-party jar is not packed into Solr war.
* Solr factory jar is not packed into Solr war.
* example/solr/collection1/conf/solrconfig.xml refers to
** ....../contrib/X/lib
** ....../dist/apache-solr-X-.....
*** both are in the same classloader- order of <lib> declarations is not a
problem.
* solrconfig.xml classloader can find Solr factory in apache-solr-X-.....jar
* Solr factory classloader supplied by solrconfig.xml can find lucene jar in
solr.war
* Lucene jar uses solr.war classloader
** solr.war classloader cannot see third-party jar
** _solr/contrib/X factory for lucene/analysis/X fails to load_
(I think I got that right.)
> Build packaging of complex contrib packages just plain does not work
> --------------------------------------------------------------------
>
> Key: SOLR-3760
> URL: https://issues.apache.org/jira/browse/SOLR-3760
> Project: Solr
> Issue Type: Improvement
> Components: Build
> Reporter: Lance Norskog
>
> The build system packages Lucene libraries in the Solr war, but they do not
> pack libraries required by the Lucene libraries. The UIMA and analysis-extras
> contrib packages have factories for the Lucene libraries.
> The net effect is that when solrconfig.xml include <lib> directives for
> dist/xxx-contribX-xxx.jar and solr/contrib/contribX/lib, this fails because
> the lucene analyzer file inside the solr war cannot find the library files in
> solr/contrib/contribX/lib because the classloader for the war does not find
> the libraries from the <lib> directives.
> Two alternative fixes are presented below.
--
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
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]