>Rafael Schloming wrote:
>The other big issue we had was with integration of the maven built
>software into other environments. I don't know if this has changed, but
>maven didn't really have a concept of configuration. Rather than
>adapting the software to build within the host environment, e.g. use
>supplied libraries and/or leave out optional portions of the build,
>maven takes the approach of adapting the host environment to fit the
>software, i.e. download whatever is necessary to build, even if that set
>of stuff is incompatible with the host environment. This actually makes
>it very difficult to integrate maven built software into controlled
>build environments, e.g. distros or release builds.
Maven (today) uses a profiling system
(http://maven.apache.org/guides/introduction/introduction-to-profiles.html)
that changes the dependencies based on either runtime parameters (for
example, my web service tutorial[1] allows you to use -PMetro or -PCXF
(default) w/different dependencies based on the web service stack you
prefer) and/or on static OS, JDK or other factors, I don't see the
latter too often however.
To build multiple distros from the same "mvn clean install" (or
separately, by defining assemblies within specific profiles and
specifically activating them), the Maven Assembly plugin is normally
used: http://maven.apache.org/plugins/maven-assembly-plugin/. I know
Apache Roller does that in its Maven build (it has separate WARs/ZIPs
based on Tomcat, JBoss, Weblogic, etc.) I'm sure there are many other
projects using it, but the Apache Maven projects I frequently build
don't have requirements for multiple distribution types.
[1] http://www.jroller.com/gmazza/entry/web_service_tutorial
>I'd be concerned that moving to a maven build might prove
>to be a barrier to broader integration. I'd certainly like to understand
>what it's impact will be e.g. on maintaining proton in distros or
>getting it to build in embedded environments.
Yes, it might be good to collect the build/distro requirements, and make
sure Joseph can manage that with Maven before moving forward with it.
Maven is used so much in Apacheville I'm pretty confident it can handle
Qpid's needs.
Glen
--
Glen Mazza
Talend Community Coders
coders.talend.com
blog: www.jroller.com/gmazza
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]