[ 
https://issues.apache.org/jira/browse/LUCENE-2657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12983123#action_12983123
 ] 

Steven Rowe commented on LUCENE-2657:
-------------------------------------

bq. Can we put this code in a separate project, that takes care of maven 
support for lucene?

I'd rather not.  The Lucene project has published Maven artifacts since the 
1.9.1 release.  I think we should continue to do that.

bq. The only way for maven to survive, is for the users that care about it, to 
support itself, just like other packaging systems such as debian, redhat rpm, 
freebsd/mac ports, etc etc that we lucene, don't deal with.

OK, those are pretty obviously red herrings.  Can we concentrate on the actual 
issue here without dragging in those extraneous things?  Maven artifacts, not 
those other things, have been provided by Lucene since the 1.9.1 release.  We 
obviously *do* deal with Maven.

bq. They can't continue to whine to people like me, who don't give a shit about 
it, to support it and produce its crazy ass complicated artifacts.

The latest patch on this release uses the Ant artifacts directly.  POMs are 
provided.  You know, just like it has been since the 1.9.1 release.

bq. Instead the people who care about these packaging systems, and know how to 
make them work must deal with them.

Um, like the patch on this issue is doing?

bq. Basically, the ant build system is our build. I think it needs to be able 
to fully build lucene for a release without involving any other build systems 
such as Make or Maven.

This patch uses the Ant-produced artifacts to prepare for Maven artifact 
publishing.  Maven itself is not invoked in the process.  An Ant plugin handles 
the artifact deployment.

I seriously do not understand why this is such a big deal.  Why can't we just 
keep publishing Maven artifacts?  You know, like we have for the past 15-20 
releases.

> Replace Maven POM templates with full POMs, and change documentation 
> accordingly
> --------------------------------------------------------------------------------
>
>                 Key: LUCENE-2657
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2657
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Build
>    Affects Versions: 3.1, 4.0
>            Reporter: Steven Rowe
>            Assignee: Steven Rowe
>             Fix For: 3.1, 4.0
>
>         Attachments: LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch, 
> LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch, 
> LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch, 
> LUCENE-2657.patch, LUCENE-2657.patch, LUCENE-2657.patch
>
>
> The current Maven POM templates only contain dependency information, the bare 
> bones necessary for uploading artifacts to the Maven repository.
> The full Maven POMs in the attached patch include the information necessary 
> to run a multi-module Maven build, in addition to serving the same purpose as 
> the current POM templates.
> Several dependencies are not available through public maven repositories.  A 
> profile in the top-level POM can be activated to install these dependencies 
> from the various {{lib/}} directories into your local repository.  From the 
> top-level directory:
> {code}
> mvn -N -Pbootstrap install
> {code}
> Once these non-Maven dependencies have been installed, to run all Lucene/Solr 
> tests via Maven's surefire plugin, and populate your local repository with 
> all artifacts, from the top level directory, run:
> {code}
> mvn install
> {code}
> When one Lucene/Solr module depends on another, the dependency is declared on 
> the *artifact(s)* produced by the other module and deposited in your local 
> repository, rather than on the other module's un-jarred compiler output in 
> the {{build/}} directory, so you must run {{mvn install}} on the other module 
> before its changes are visible to the module that depends on it.
> To create all the artifacts without running tests:
> {code}
> mvn -DskipTests install
> {code}
> I almost always include the {{clean}} phase when I do a build, e.g.:
> {code}
> mvn -DskipTests clean install
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to