You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Vincent Massol <vm...@pivolis.com> on 2005/12/01 14:52:03 UTC

RE: Multi-module wars


> -----Original Message-----
> From: Richard Allen [mailto:richard.allen@gtri.gatech.edu]
> Sent: mercredi 30 novembre 2005 14:01
> To: Maven Users List
> Subject: Re: Multi-module wars

[snip]

> However, I would like to see the maven-war-plugin support the web.xml
> merge functionality that Kevin Galligan's hack includes. Maybe you can
> raise this as a JIRA issue Kevin?

Just a note here for anyone interested in implementing this: there's code in
Cargo to merge web.xml files and this library is being improved with support
for also merging container-specific deployment descriptors. There are also
generic classes for merging any xml files.

It's in there: http://tinyurl.com/dtwet

Check the org.codehaus.cargo.module.webapp.WebXmlMerger class along with the
files in org.codehaus.cargo.module.merge.

Hope it helps,
-Vincent

> Richard Allen wrote:
> 
> > A solution may be to put your common WAR code in a separate project,
> > have your other WAR projects call out the common war project as a
> > dependency, and then use the maven-war-plugin hack posted by Kevin
> > Galligan (see
> > http://www.nabble.com/-M2-war-project-using-war-type-dependencies-
> t473430.html#a1352624)
> > to merge the common WAR project with your other WAR projects.
> >
> > Richard Allen
> >
> > Michael McCrann wrote:
> >
> >> Hi,
> >>
> >> I am trying to create an application that is made up of a number of
> >> war files that are almost identical.
> >> Each war differs only by resource descriptors (web.xml, etc) and a
> >> few images.
> >>
> >> Can I do this using a multi-module project as shown below:
> >>
> >> Project (pom.xml)
> >> |
> >> |---ear module (pom.xml)
> >> |
> >> |---parent of web modules (has common source code, JSP, CSS, images
> >> etc.)
> >>    |
> >>    |--- web module A (war)
> >>    |--- web module B (war)
> >>    |--- web module C (war)
> >>
> >> The parent web module has common things - source code, JSPs, images,
> >> CSS, Javascript, etc.
> >> Then the individual modules just have the things that are different
> >> for them, and they build using the parent's common things plus their
> >> individual things.
> >>
> >> Michael
> >> -----Original Message-----
> >> From: Richard Allen [mailto:richard.allen@gtri.gatech.edu] Sent:
> >> Wednesday, 30 November 2005 11:42 AM
> >> To: Maven Users List
> >> Subject: Re: RE : War phases, binding a custom plugin to the war
> >> creation
> >>
> >> I'm definitely interested in this. We use Struts modules and we keep
> >> each Struts module in a separate project. We have to merge the
> >> various Struts modules during the build process (which are each like
> >> a WAR). I'm currently using a maven-war-plugin hack that a previous
> >> user posted to the list (may have been you Kevin), but I would like
> >> to see something more standard in place, especially since this seems
> >> to be a common use case.
> >>
> >> Thanks,
> >> Richard Allen
> >>
> >>
> >> Kevin Galligan wrote:
> >>
> >>
> >>
> >>> I've hacked up the maven-war-plugin to merge war dependencies into
> >>> the final product.  I posted the code originally, but I've added a
> >>> few things since then.  These include an updated version of the
> >>> cargo web.xml merging code.  The current version only merges certain
> >>> parts of the web.xml.  Internally we needed more.
> >>>
> >>> I also track the war file version to we don't need a full extract of
> >>> dependent wars every time a build is done.  The way I do this is
> >>> very hacky, but functional.
> >>>
> >>> Anyway, wondering if anybody would be interested, and/or if this
> >>> kind of functionality would be considered for a future add.
> >>>
> >>> Olivier Lamy wrote:
> >>>
> >>>
> >>>
> >>>> Hi,
> >>>> I'm happy to see that some users needs more feature in the
> >>>> maven-war-plugin !!
> >>>> It works but for simple webapp and you need to add some embedeed
> >>>> ant scripts in order to copy some files (it's really clean).
> >>>> I have provided a patch http://jira.codehaus.org/browse/MNG-1683
> >>>> which add some features.
> >>>> Take this
> >>>> http://jira.codehaus.org/secure/attachment/17799/maven-war-plugin.tar
> >>>> .gz
> >>>>
> >>>> - Unzip it - install the plugin : mvn -DupdateReleaseInfo=true
> >>>> clean >> install
> >>>> - look at the documentation : mvn site
> >>>>
> >>>> Exemple :
> >>>> To add jsp files add this in the configuration :
> >>>>        <webappDirectory
> >>>> implementation="java.io.File">${basedir}/webappdir</webappDirectory>
> >>>>          <resources>
> >>>>            <resource>
> >>>>              <directory>${basedir}/src/main/jsp</directory>
> >>>>
> >>>>              <targetPath>${basedir}/webappdir</targetPath>
> >>>>          <!-- note ${webappDirectory} doesn't work due to some
> >>>> introspection trouble
> >>>>            I have updated my local version to copy resources to a
> >>>> target path relative to ${webappDirectory}
> >>>>         -->
> >>>>            </resource>
> >>>>                    </resources>
> >>>>
> >>>> I don't really know if this kind of features will be added one day
> >>>> in the maven-war-plugin.... (because in some contexts create a war
> >>>> is more complicated than the jobs provided by the default plugin)
> >>>>
> >>>> Note the issue http://jira.codehaus.org/browse/MNG-791 (mark as
> >>>> fixed in 2.0.1).
> >>>>
> >>>> HTH,
> >>>>
> >>>> - Olivier
> >>>>
> >>>> -----Message d'origine-----
> >>>> De : Bruno Aranda [mailto:brunoaranda@gmail.com] Envoyé : mardi 29
> >>>> novembre 2005 18:46 À : Maven Users List Objet : War phases,
> >>>> binding >> a custom plugin to the war creation
> >>>>
> >>>>
> >>>> Hi all,
> >>>>
> >>>> I would like to know what phase I have to use to bind a plugin to
> >>>> the war creation (war:war).
> >>>>
> >>>> <plugin>
> >>>>     <groupId>my.groupId</groupId>
> >>>>     <artifactId>maven-myPlugin-plugin</artifactId>
> >>>>     <executions>
> >>>>       <execution>
> >>>>         <phase>WHAT TO PUT HERE</phase>
> >>>>         <goals>
> >>>>           <goal>myPluginGoal</goal>
> >>>>         </goals>
> >>>>       </execution>
> >>>>     </executions>
> >>>>   </plugin>
> >>>>
> >>>> It works ok for the process-resources and package phases, but the
> >>>> first is too early, and the other is too late. I am trying to copy
> >>>> some JSP pages in a specific way to the exploded war folder before
> >>>> creating the war file,
> >>>>
> >>>> TIA,
> >>>>
> >>>> Bruno
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >>>> For additional commands, e-mail: users-help@maven.apache.org
> >>>>
> >>>>
> >>>>
> >>>> This e-mail, any attachments and the information contained therein
> >>>> ("this message") are confidential and intended solely for the use
> >>>> of the addressee(s). If you have received this message in error
> >>>> please send it back to the sender and delete it. Unauthorized
> >>>> publication, use, dissemination or disclosure of this message,
> >>>> either in whole or in part is strictly prohibited.
> >>>> *********************************************************************
> >>>> * Ce message électronique et tous les fichiers joints ainsi que
> >>>> les >> informations contenues dans ce message ( ci après "le
> >>>> message" ), sont confidentiels et destinés exclusivement à l'usage
> >>>> de la personne à laquelle ils sont adressés. Si vous avez reçu ce
> >>>> message par erreur, merci  de le renvoyer à son émetteur et de le
> >>>> détruire.
> >>>> Toutes diffusion, publication, totale ou partielle ou divulgation
> >>>> sous quelque forme que se soit non expressément autorisées de ce
> >>>> message, sont interdites.
> >>>> *********************************************************************
> >>>> *
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >>>> For additional commands, e-mail: users-help@maven.apache.org
> >>>>
> >>>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >>> For additional commands, e-mail: users-help@maven.apache.org
> >>>
> >>>
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >> For additional commands, e-mail: users-help@maven.apache.org
> >>
> >>
> >>
> >> NOTICE
> >> This e-mail and any attachments are confidential and may contain
> >> copyright material of Macquarie Bank or third parties. If you are not
> >> the intended recipient of this email you should not read, print,
> >> re-transmit, store or act in reliance on this e-mail or any
> >> attachments, and should destroy all copies of them. Macquarie Bank
> >> does not guarantee the integrity of any emails or any attached files.
> >> The views or opinions expressed are the author's own and may not
> >> reflect the views or opinions of Macquarie Bank.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >> For additional commands, e-mail: users-help@maven.apache.org
> >>
> >>
> >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> > For additional commands, e-mail: users-help@maven.apache.org
> >
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
> 
> 
> 
> --
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.1.362 / Virus Database: 267.13.10/188 - Release Date:
> 29/11/2005


	

	
		
___________________________________________________________________________ 
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger 
Téléchargez cette version sur http://fr.messenger.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org