On Tuesday, 16 April 2013, Mark Eggers wrote:

> Hi,
>
> I'm fairly new to Maven, and I'm trying to meet the following requirements.
>
> 1. A web site consisting of multiple components, some optional
> 2. Optional components each have some configuration files
> 3. If multiple optional components are present, the configuration files
>    should be concatenated
>
> My first pass using WAR overlays and the shade plugin worked, in that the
> resulting site.war had all the right components. However, target/site did
> not contain the concatenated files created by the shade plugin. This
> prevented target/site being run from within an IDE.
>
> If I thought about it for a minute, that's pretty obvious since the shade
> plugin is executed during the package part of the lifecycle.
>
> What I came up with is the following:
>
> 1. Create a multi-module project
> 2. One module collects all of the components that require use of the
>    shade plugin
> 3. The second module is the actual site, and depends on the
>    "collections" module
> 4. Use the WAR plugin overlay, plus exclusions, plus the shade plugin
>    to create an intermediate WAR in the collections module
> 5. Overlay that intermediate WAR on the final site
>
> This works except that I now have an extra artifact that is only used
> during the build. I can run target/site from the IDE (great for debugging)
> and site.war looks as it should.
>
> Other than the fact that this works, is this the proper "Maven way"? The
> extra artifact (an artifact of the build process as it were) feels a little
> odd.


Well it sounds like you are removing complexity in 1 pom by creating a
few (individually) less complex  poms and using the reactor to reference
modules... As a principle that is more the Maven Way than a 1000 line pom
that does it all "by magic"

I've not seen people using shade with a war module, that's a use case that
perhaps needs exploring


> . . . . just my two cents
> /mde/
>
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

-- 
Sent from my phone

Reply via email to