Hi

We have a default pom file with packaging "war" for our codebase.

>From the same code base we also want to generate a normal jar and a
fat jar with dependencies.

Currently solution that has been implemented is another pom-jar.xml
file that has the packaging as jar and maven-assembly-plugin to
generate the jar with dependencies. We use mvn install -f pom-jar.xml.

But we are in a situation where if any new dependency is added to
pom.xml, we need to add to pom-jar.xml as well as it is the same
codebase.

To avoid this we thought of couple of solutions -

1. Add maven-jar-plugin and maven-assembly-plugin to the default pom
with packaging war - so it generates a war file, a normal jar file and
fat jar out of the same pom. So we can do away with the pom-jar.xml.

Not sure if this is a good solution. We tried this, but this is
working well only in maven 3.0.4. The assembly plugin is not working
well with Maven 2 (which is in our build environment) while generating
the fat jar.

2. Have a parent pom and put all the dependencies and plugins in that
and have 2 child poms in the same codebase with different names
inherit from parent pom, one that has packaging of war that generates
war file and the other child pom has packaging jar with maven assembly
plugin to generate both normal and fat jar. And all new dependencies
need to be added only to parent pom.

This solution will make us have 3 pom files in codebase, doesnt look
very elegant, but will solve our dependency management issues between
the 2 packaging.


Are these good solutions? Is there any other good solution available
for this scenario ?


Regards
Narayanan

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

Reply via email to