[ 
http://jira.codehaus.org/browse/MRELEASE-266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_102622
 ] 

Steve Ebersole commented on MRELEASE-266:
-----------------------------------------

Forgot to mention, this is on fedora 7, if that would make a difference.

> Content outside root elements in pom are not transfered to the release poms
> ---------------------------------------------------------------------------
>
>                 Key: MRELEASE-266
>                 URL: http://jira.codehaus.org/browse/MRELEASE-266
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>    Affects Versions: 2.0-beta-6
>            Reporter: Steve Ebersole
>
> The usual convention for copyright/license headers in xml files is b4 the 
> root element tag, so that it occurs outside the main body (i.e. outside 
> Document.getRootElement()).  My experience is that the release plugin does 
> not copy such comments over to the release poms (such that the release poms 
> are missing those headers).
> I believe the plugin tries to handle these comments in 
> org.apache.maven.shared.release.phase.AbstractRewritePomsPhase#transformProject
>  where it sets up the 'intro' and 'outtro' vars.  In my experience, this was 
> not working.  And JDOM provides an easier approach anyway, by filtering the 
> Document contents for non-Elements (making assumption that <project/> is the 
> single root) and copying over the filtered content.  This would be a simple 
> change to #writePom:
> 1) just write out the Document itself?:
>             ...
>             writer = new FileWriter( pomFile );
> //            if ( intro != null )
> //            {
> //                writer.write( intro );
> //            }
> //
> //            Format format = Format.getRawFormat();
> //            format.setLineSeparator( LS );
> //            XMLOutputter out = new XMLOutputter( format );
> //            out.output( document.getRootElement(), writer );
> //
> //            if ( outtro != null )
> //            {
> //                writer.write( outtro );
> //            }
>             Format format = Format.getRawFormat();
>             format.setLineSeparator( LS );
>             XMLOutputter out = new XMLOutputter( format );
>             out.output( document, writer );
> 2) separate element/non-element:
>             ...
>             writer = new FileWriter( pomFile );
> //            if ( intro != null )
> //            {
> //                writer.write( intro );
> //            }
> //
> //            Format format = Format.getRawFormat();
> //            format.setLineSeparator( LS );
> //            XMLOutputter out = new XMLOutputter( format );
> //            out.output( document.getRootElement(), writer );
> //
> //            if ( outtro != null )
> //            {
> //                writer.write( outtro );
> //            }
>             private final List nonElements = document.getContents(
>                     new Filter() {
>                         public boolean matches(Object obj) {
>                             return obj instanceof Comment || obj instanceof 
> ProcessingInstruction;
>                         }
>                     }
>             );
>             Format format = Format.getRawFormat();
>             format.setLineSeparator( LS );
>             XMLOutputter out = new XMLOutputter( format );
>             out.putput( nonElements, writer );
>             out.output( document.getRootElement(), writer );

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to