Maven and ALM

Hi everyone, I'd like to share with you a simple yet pragmatic implementation of some ALM use cases based on Apache Maven http://pillitu.wordpress.com/2009/06/26/maven-calm/ The main idea of this simple cross-corporate POM is to share the best practices of Apache Maven - being IMO the best build tool which implements the concept of application lifecycle - in a collaborative and open way. I'd be very interested to hear your opinions and criticisms. Thanks in advance, Maurizio

Comments

Hi , The idea of one cross-corporate POM it's nice but when it's come for practice there is problem. If you would like your cross-corporate POM to include all the features needed for all project's you will finish with pom it's hard to manage (I has this experiment with ant) What I missed in the cross-corporate POM the assembly project (runtime project) usually when I implements maven project I create project that describe and build the runtime directory using maven-antrun-extended-plugin . Thanks , Itai

Hi Itai,
you got exactly the point: our main challenge now is to manage additional features to maven-calm, without having a huge POM file; the limitation is given by the fact that a POM inherits behaviors only from its parent, which must be unique.

However, assuming that Maven is a build framework - and not a build tool - we were thinking to overcome this limitation by aggregating additional profiles depending on a certain convention on the POM:

dependency:
groupId:com.sourcesense.maven
artifactId:maven-calm-tomcat-embedded
classifier:calm-profile

dependency:
groupId:com.sourcesense.maven
artifactId:maven-calm-ldap-embedded
classifier:calm-profile

Regarding the maven-antrun-extended-plugin, you are free to add it in your project POM even if you use maven calm; the question is: would you apply your maven-antrun-extended-plugin configuration as a default and suggested configuration?

Thanks for your precious feedback!

Maurizio