You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steven Rowe (JIRA)" <ji...@apache.org> on 2010/12/29 11:57:54 UTC

[jira] Issue Comment Edited: (LUCENE-2657) Replace Maven POM templates with full POMs, and change documentation accordingly

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

Steven Rowe edited comment on LUCENE-2657 at 12/29/10 5:56 AM:
---------------------------------------------------------------

Changes in this version of the patch:

# Reduced configuration redundancy: as much as possible, shared configuration is now located in the {{lucene-parent}} POM.
# The {{solr-aggregator}} POM is converted to a {{solr-parent}} POM, and all Solr modules are now children of it rather than of {{lucene-parent}}.  This POM hosts Solr-specific shared configuration.
# The solr war is now generated in a new POM located in {{solr/src/webapp/}}.  This POM also includes an *untested* {{maven-jetty-plugin}} configuration, for use in starting up Solr from Maven, as requested in SOLR-1218.
# A profile in the {{lucene-parent}} POM to generate source jars for each module: {{source-jar}}.
# A profile in the {{lucene-parent}} POM to generate javadoc jars for each module: {{javadocs-jar}}.
# Consistent MANIFEST.MF entries in all archives, including timestamps generated using embedded Groovy via {{gmaven-plugin}} and the Subversion revision from {{buildhelper-maven-plugin}}.
# NOTICE.txt and LICENSE.txt are now placed in META-INF/ in all archives
# The Maven plugin versions are updated to the latest available.

All tests pass.

If you have used previous versions of the patch, you should re-run {{mvn -N -P bootstrap}} from the top level, to install the non-maven dependencies in your local Maven repository.  (Some of the jar names have changed to better reflect their names as used in Solr.)

To create binary, javadoc and source jars, and install them in your local repository, run the following at any level:

{code}
mvn -DskipTests -P javadocs-jar,source-jar clean install
{code}


      was (Author: steve_rowe):
    Changes in this version of the patch:

# Reduced configuration redundancy: as much as possible, shared configuration is now located in the {{lucene-parent}} POM.
# The {{solr-aggregator}} POM is converted to a {{solr-parent}} POM, and all Solr modules are now children of it rather than of {{lucene-parent}}.  This POM hosts Solr-specific shared configuration.
# The solr war is now generated in a new POM located in {{solr/src/webapp/}}.  This POM also includes an *untested* {{maven-jetty-plugin}} configuration, for use in starting up Solr from Maven, as requested in SOLR-1218.
# A profile in the {{lucene-parent}} POM to generate source jars for each module: {{source-jar}}.
# A profile in the {{lucene-parent}} POM to generate javadoc jars for each module: {{javadocs-jar}}.
# Consistent MANIFEST.MF entries in all archives, including timestamps generated using embedded Groovy via {{gmaven-plugin}} and the Subversion revision from {{buildhelper-maven-plugin}}.
# NOTICE.txt and LICENSE.txt are now placed in META-INF/ in all archives
# The Maven plugin versions are updated to the latest available.

All tests pass.

If you have used previous versions of the patch, you should re-run {{mvn -N install}} from the top level, to install the non-maven dependencies in your local Maven repository.  (Some of the jar names have changed to better reflect their names as used in Solr.)

To create binary, javadoc and source jars, and install them in your local repository, run the following at any level:

{code}
mvn -DskipTests -P javadocs-jar,source-jar clean install
{code}

  
> 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
>
>
> 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-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org