forgot to add: I'm using maven version 3.0-beta-1

-Marshall

On 6/23/2010 10:31 AM, Marshall Schor wrote:
> I'm trying to do our first release using version 2.0 of the maven
> release plugin for a multi-module project at Apache, with a flat
> hierarchy.  After failing because the Apache common pom was specifying
> version 2.0-beta-9 of the release plugin (which didn't have the flat
> hierarchy support), and redoing our top-level project pom to specify
> release 2.0, I did the release-prepare on this structure:
>
> SVN:
>   build/trunk/aggregate-parent-poms
>   build/trunk/parent-pom-1
>   build/trunk/parent-pom-2
>                etc.
>
> where the "aggregate-parent-poms" project is one which uses
> <modules><module>../parent-pom-1</module>... etc. to aggregate the other
> projects.
>
> WORKING DIR where things are checked out:
>   build-trunk-data/aggregate-parent-poms
>   build-trunk-data/parent-pom-1
>   build-trunk-data/parent-pom-2
>                etc.
>
> mvn release:prepare worked, but it generated in SVN the structure:
>
>   build/tags/aggregate-parent-poms-1/trunk/aggregate-parent-poms
>  build/tags/aggregate-parent-poms-1/trunk/parent-pom-1
>  build/tags/aggregate-parent-poms-1/trunk/parent-pom-2
>                etc.
>
> In reading the first comment for the flat-hierarchy support Jira issue
> http://jira.codehaus.org/browse/MRELEASE-261 I noticed it says the fix
> was to determine the directory in the maven module hierarchy which is
> the common owning directory for all the projects with the hierarchy.  In
> this case, in the SVN hierarchy, it is "trunk". 
>
> So I'm not sure if the SVN structure, with the "extra" "trunk" directory
> is intentional or not.
>
> However, running, subsequently, the mvn release:perform goal, checked
> out the SVN tag in to the aggregate-parent-poms/target/checkout with the
> "trunk" directory included:
>
> WORKING DIR where things are checked out:
>  
> build-trunk-data/aggregate-parent-poms/target/checkout/trunk/aggregate-parent-poms
>   build-trunk-data/aggregate-parent-poms/target/checkout/trunk/parent-pom-1
>   build-trunk-data/aggregate-parent-poms/target/checkout/trunk/parent-pom-2
>                etc.
>
> The next step, building the checked-out projects, failed, because it
> didn't use that extra "trunk" directory, but instead tried to build the
> aggregate from target/checkout/aggregate-parent-poms.  The failure says:
>
>  
> build-trunk-data\aggregate-parent-poms\target\checkout\aggregate-parent-poms"
> does not exist!
>
> which is, of course, true, because there's that extra "trunk" directory
> in the path as checked out.
>
> So the build step apparently doesn't expect the extra trunk directory.
>
> A side note: each project has its own scm elements specifying where in
> SVN it resides; these were correctly updated by the release:prepare. 
> This approach (having each project define its own scm elements) seems to
> be required by "flat" hierarchy projects.
>
> Is this a known issue, and if so, is there a work-around?
>
> -Marshall
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>
>
>   

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to