[ 
https://issues.apache.org/jira/browse/LUCENE-4365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Steven Rowe updated LUCENE-4365:
--------------------------------

    Attachment: LUCENE-4365.patch

Trunk patch splitting out a tests-only module for each of the four modules that 
have cyclic dependencies involving Lucene test-framework or Solr test-framework.

The {{solr-core-tests}} module fails {{SolrInfoMBeanTest#testCallMBeanInfo()}} 
when a run against the {{solr-core}} jar, apparently because the SolrInfoMBean 
finding method doesn't look into jar dependencies.  The attached patch works 
around this issue by declaring the same compilation output directory as 
{{solr-core}}, so that like the Ant build, tests include the .class files in 
the classpath.  {{solr-solrj-tests}} is given the same treatment for similar 
reasons.

All tests pass.
                
> The Maven build can't directly handle complex inter-module dependencies 
> involving the test-framework modules
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-4365
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4365
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: general/build
>            Reporter: Steven Rowe
>            Assignee: Steven Rowe
>            Priority: Minor
>         Attachments: LUCENE-4365.patch, lucene.solr.dependency.cycles.png.jpg
>
>
> The Maven dependency model disallows cyclic dependencies, of which there are 
> now several in the Ant build (considering test and compile dependencies 
> together, as Maven does).  All of these cycles involve either the Lucene 
> test-framework or the Solr test-framework.
> The current Maven build works around this problem by incorporating 
> dependencies' sources into dependent modules' test sources, rather than 
> literally declaring the problematic dependencies as such. (See SOLR-3780 for 
> a recent example of putting this workaround in place for the Solrj module.)  
> But with the factoring out of the Lucene Codecs module, upon which Lucene 
> test-framework has a compile-time dependency, the complexity of the 
> workarounds required to make it all hang together is great enough that I want 
> to attempt a (Maven-build-only) module refactoring.  It should require fewer 
> contortions and be more maintainable.
> The Maven build is currently broken, as of the addition of the Codecs module 
> (LUCENE-4340).

--
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]

Reply via email to