Hi I will try to explain better my current solution, because i would like to know if this is the better approach.
As I referenced my requirement is to generate the multiple WARs and aggregate the WARs in a EAR. I also like to generate skinny wars, and include the common, and 3rd party JARs only in the EAR... But also generate "fat-wars" so the WARs can be deployed separately (for example in an environment that does not support EAR deployment). My project structure is the following: project: -webapp1 -webapp2 -webapp3 -common -common-overlay -ear -fat-overlay The webappX projects all have a dependency to the common project with the scope "provided". The common project contains common code and all the 3rd party dependencies. The common-overlay project contains common files to be applied to the webapp projects. The ear project aggregates the webapp projects and the common project to generate the desired ear The fat-overlay is just an overlay to create "fat wars", i.e it has a dependency to the common project with the scope "compile". When I apply this overlay to the webapp projects I end up with "fat-wars" As you already guess the m-war-plugin for the webapp project is configured to generate 2 artifacts: a skinny war, and a fat-war that is equal to the skinny plus the "fat-overlay" Is this the maven way? Is there even a maven way for this? Another option that came to my mind was to somehow use the m-assembly-plugin to use the skinny wars plus the common project and its transitive precedences, and generate a zip with the 3 wars but each war was injected with the common project and its dependencies... Hope to hear your suggestion João Ferreira No dia 8 de Fevereiro de 2011 11:21, João Ferreira <[email protected]>escreveu: > Hello > > I have this project that consists of multiple war modules, and the > requirement to distributed the artifacts as an ear, but also a collection of > single wars so they can be deployed in an environment that does not support > ear deployment. The problem is that I am using skinny wars and i would like > to inject the common libraries in each war. > > My first approach was using the multiple executions of the war plugin with > different overlays to generate skinny and fat wars, but i would like to just > generate a single artifact per module. I was thinking of creating a new > module that could inject the common libraries in each war and assembly the > wars within a zip for simple distribution. Is this possible? > > For some context here is my project structure > > Project > - WebApp1 > - WebApp2 > - WebApp3 > - common > - ear > > Best regards > > João Ferreira >
